[英]From CURL to AJAX XMLHttp
由於平台限制,我正在嘗試將curl代碼從稱為TextRazor的API轉換為AJAX XMLHttp。 我已經嘗試了社區中類似問題的許多解決方案,但似乎無法獲取任何數據,或者只能獲取“ 400:Bad Request”。 如果重要的話,從調用該API的文檔中可以看到:
curl -X POST \
-H "x-textrazor-key: YOUR_API_KEY" \
-d "extractors=entities,entailments" \
-d "text=Spain's stricken Bankia expects to sell off..." \
https://api.textrazor.com/
我當前的AJAX XMLHttp代碼如下所示:
var xhttp = new XMLHttpRequest();
var url = "https://api.textrazor.com/";
var params = "extractors=entities&text=Spain's stricken Bankia expects to sell...";
xhttp.open("POST", url, true);
xhttp.setRequestHeader("x-textrazor-key", "YOUR_API_KEY");
xhttp.setRequestHeader("Content-length", params.length);
xhttp.onreadystatechange = function() {
if(xhttp.readyState == 4 && xhttp.status == 200) {
alert(xhttp.responseText);
}
}
xhttp.send(params);
謝謝你的支持!
您正在使用相同的原始策略 。
由於您是在進行跨域請求並添加自定義標頭,因此瀏覽器在發出請求前先發出預檢OPTIONS請求 。
您向其發送請求的服務器不准備響應OPTIONS請求,因此它向您拋出400。
要解決此問題:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.