【发布时间】:2016-02-10 04:11:06
【问题描述】:
我正在尝试使用 GET 请求从 http://api.roblox.com/marketplace/productinfo?assetId=361192737 (link) 获取 JSON 对象,但它似乎不起作用。
(function(){
var xmlHttp;
xmlHttp = new XMLHttpRequest();
xmlHttp.onreadystatechange = ProcessRequest;
xmlHttp.open( "GET", 'http://api.roblox.com/marketplace/productinfo?assetId=361192737', true );
xmlHttp.send( null );
function ProcessRequest(){
console.log(xmlHttp.responseText); // "" (empty string)
var respData = JSON.parse(xmlHttp.responseText) || {};
RemoteEvents = JSON.parse(respData.Description) || null;
}
})()
这是在开发模式下的 Chrome 扩展上。我对 JavaScript 不是很有经验,对 HTTP 请求更没有经验。我做错了什么?
【问题讨论】:
-
onreadystatechange触发多次。您永远不会检查它是哪种状态更改 - 其中许多没有响应文本,因为请求尚未到达流程的那个阶段。 -
您是否按照指示进行操作:developer.chrome.com/extensions/xhr
-
根据您需要的最低版本,您还可以使用更简单的
fetchapi developer.mozilla.org/en-US/docs/Web/API/Fetch_API
标签: javascript google-chrome-extension xmlhttprequest