最初の Chrome 拡張機能 (ポップアップ) を作成しようとしています。サーバーにデータを POST します。簡単だろうと思ったのですが、行き詰まってしまいました。
manifest.json で、「http://mypage[dot]com/」と「http://mypage[dot]com/*」のパーミッションを設定して、「mypage[dot]com/api」にアクセスできるようにしました。データの送信先。したがって、私の popup.html は次のようになります。
<!doctype html>
<html lang="en">
<meta charset="UTF-8">
<title>myExtension</title>
</head>
<body>
<form name="myform">
<input type="text" name="myText" id="myText"/>
<input type="submit" name="senden"/>
</form>
</body>
<script src="jquery-1.8.2.min.js"></script>
<script src="popup.js"></script>
</html>
したがって、私の popup.js は次のようになります。
document.forms["myForm"].addEventListener("submit", sendRequest)
function sendRequest() {
var myVar= $('#mytext').val();
var myrequest= $.ajax({
type: 'POST',
url: 'http://mypage.com/api/',
data: {screen_name: 'myname', api_key: 'myKey', var1: myVar},
success: function(data, textStatus){
alert('request successful');
},
error: function(xhr, textStatus, errorThrown){
alert(xhr); alert(textstatus); alert(errorThrown);
}
});
}
ここで、送信ボタンを押すと、次の 3 つのアラートのみが表示されます。最初のアラートは [object Object]、2 番目のアラートはエラー、3 番目のアラートは空のみです。
この問題を解決しようとしましたが、エラーの場所がわかりません。また、いくつかの background.html と content_script.js について読みましたが、それらと何をしなければならないのかわかりません。また、インターネットで見つけたいくつかの拡張機能には、popup.html と popup.js しか含まれておらず、同じようにうまく機能します。行う必要があります (例: domai.nr 拡張子)。
そのため、ポップアップ拡張機能内でデータを正しく投稿するために何を使用し、何をしなければならないかについて、いくつかの説明について非常に満足しています。