jQuery/ajax を介してこれを実行しようとしましたが、うまくいかなかったので、通常の XMLHttpRequest にフォールバックすると考えました。残念ながら、まだ機能していません (同じ問題)。
Google の POST リクエストのドキュメントは次のとおりです。そして、ここに私のコードがあります:
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("POST", "https://www.googleapis.com/urlshortener/v1/url", true);
xmlHttp.setRequestHeader("Content-Type", "application/json");
var url = "longUrl=" + encodeURIComponent("http://www.google.com/");
console.log(url);
xmlHttp.send(url);
「url」は次のようにコンソールに送信されます: longUrl=http%3A%2F%2Fwww.google.com%2F
応答は次のとおりです。
{
"error": {
"errors": [
{
"domain": "global",
"reason": "parseError",
"message": "Parse Error"
}
],
"code": 400,
"message": "Parse Error"
}
}
誰かが私が間違っていることを見ていますか?
前もって感謝します!
編集:@Greg用に追加-jQueryを使用しているときにGoogleの仕様に従っていることがわかるように-同じ正確なエラーが発生します。
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
data: { "longUrl": "http://www.google.com/" },
url: "https://www.googleapis.com/urlshortener/v1/url",
success: function(data) {
//do something with the shortened url json data
//console.log(data);
}
});