javascript - 发送 qx.io.request.Xhr 请求,请求中包含数组

标签 javascript xmlhttprequest qooxdoo

根据documentation 、requestData可以处理ArrayBuffer参数。但是当我尝试这个时:

var buf = new ArrayBuffer(16); 
var ar = new Uint8Array(buf); 
for(var i = 0; i < ar.length; i++) 
    ar[i] = i * 10; 
request = new qx.io.request.Xhr(); 
request.setUrl(url); 
request.setRequestData(buf); 
request.send(); 

我收到以下错误:

Error: params must be either string or object 

我做错了什么?

最佳答案

您必须将方法设置为 POST

request.setMethod('POST'); 

在调用request.send()之前。所以你的例子看起来像这样:

var buf = new ArrayBuffer(16); 
var ar = new Uint8Array(buf); 
for(var i = 0; i < ar.length; i++) {
    ar[i] = i * 10; 
}
request = new qx.io.request.Xhr().set({
    url: url,
    requestData: buf,
    method: 'POST'
}).send();

另请参阅https://github.com/qooxdoo/qooxdoo/blob/master/framework/source/class/qx/test/bom/request/SimpleXhr.js#L337

关于javascript - 发送 qx.io.request.Xhr 请求,请求中包含数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37035641/

相关文章:

javascript - 在 Node Express 应用程序中检测 TLS 版本?

javascript - MooTools 请求失败

javascript - 在 XMLHttpRequest 之后加载 jQuery 选项卡

javascript - 在 Angular 应用程序中渲染 react 组件时出错

Javascript 和 ASP MVC - 刷新图像

javascript - qooxdoo 事件最佳实践

javascript - 在 qooxdoo 中测试源应用程序

javascript - 生成 qooxdoo api 并忽略错误

javascript - 为什么 javascript 检测到我已经滚动到元素底部,而实际上我还没有滚动到元素底部?

javascript - JSON 用户搜索