Fly.js axios.js等默认会将JavaScript objects 序列化为 JSON 发送(RequestBody),如果想以 application/x-www-form-urlencoded 编码格式如
a=14&b=0
发送,你可以使用如下方式:
浏览器中
在浏览器中, 你可以使用 URLSearchParams
,如下:
var params = new URLSearchParams();
params.append('param1', 'value1');
params.append('param2', 'value2');
fly.post('/foo', params);
注意,现在不是所有浏览器都支持 URLSearchParams
(参考 caniuse.com), 但是有一个 polyfill 可用 (确保polyfill为全局变量).
另一种安全的方法,你可以使用 qs
库:
如果没有安装 先安装 npm install qs
//import qs from "qs";
var qs = require('qs');
fly.post('/foo', qs.stringify({ 'bar': 123 }));
Node.js
在node中,你可以使用 querystring
模块,如:
//import querystring from "querystring";
var querystring = require('querystring');
fly.post('http://something.com/', querystring.stringify({ foo: 'bar' }));
你也可以使用 qs
库.