簡體   English   中英

通過chrome擴展程序中的post request發送URL onload

[英]send the URL onload by post request in chrome extension

第一次使用該網站問一個問題,我是chrome擴展的新手,所以我確定我在犯一些錯誤,我事先道歉

我正在嘗試通過郵寄請求發送當前選項卡的url onload,我只能通過提交使其發送url,我如何在頁面加載中自動發送

這是我的代碼

manifest.json

       {
      "manifest_version": 2,

      "name": "Phishing tool",
      "description": "This extension send url to server to check for phishing",
      "version": "1.0",

      "browser_action": {
        "default_icon": "icon.png",
        "default_popup": "popup.html"
      },
      "permissions": [
        "activeTab",
        "tabs",
        "http://localhost:8080/ph/FirstServlet*"
        ]
    }

popup.html

<!DOCTYPE html>
<html>
<head><script src="p.js"></script></head>
<body>
<object width="200" height="50" ></object>

<form action="http://localhost:8080/ph/FirstServlet" method="POST">


link:<input type="text" name="first_name"> <br /><br />
<input  type="submit" value="Submit" />
</form>
<p>
<button id="myBtn"> click here to display the url</button> </p>
<h1 id="demo">Url displays Here</h1>
</body>
</html>

p.js

    document.addEventListener("DOMContentLoaded", function() {
    chrome.tabs.query({currentWindow: true, active: true}, function(tabs) {
        var tabURL = tabs[0].url;

        var xhr = new XMLHttpRequest();
        xhr.onload = function(){
              console.log(xhr.responseText);
        };
        xhr.open("POST", "http://localhost:8080/ph/FirstServlet");
        xhr.send(tabURL);
    });
});

我嘗試過,但是當我單擊插件圖標時,它沒有顯示來自服務器的響應

假設您要將URL從彈出頁面(擴展過程)發送到服務器,並且服務器URL為SERVER_URL ,則需要執行以下操作:

  1. manifest.json文件的permissions字段中添加SERVER_URL ,對於您的情況是

     "permissions": [ "http://localhost:8080/ph/FirstServlet/*" ] 
  2. popup.js進行ajax調用

     document.addEventListener("DOMContentLoaded", function() { chrome.tabs.query({currentWindow: true, active: true}, function(tabs) { var tabURL = tabs[0].url; var formData = new FormData(); formData.append("first_name", tabURL); var xhr = new XMLHttpRequest(); xhr.onload = function(){ console.log(xhr.responseText); // Your logic }; xhr.open("POST", SERVER_URL); xhr.send(formData); }); }); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM