【发布时间】:2016-11-24 15:20:27
【问题描述】:
我正在使用 npm 请求模块在 Express.js 应用程序中向内部 API 发出请求。我将以下选项传递给request 函数:
requestOptions = {
url : http://whatever.com/locations/
method : "GET",
json : {},
qs : {
lng : longitude,
lat : latitude + '/predictions'
}
纬度和经度参数会根据用户输入而改变,因此不能硬编码。
我希望向其发出请求的 URL 示例是 http://whatever.com/locations/37.891726,-122.277858/predictions。
不幸的是,request(requestOptions, callback) 的结果是向http://whatever.com/locations/?lng=37.891726&lat=-122.277858%2Fpredictions 发出请求。
我从documentation 知道,我可以将分隔符从& 调整为,,并且如果我添加属性@987654331,我手动附加到lat 的/ 可以正确发送@到requestOptions。但是手动添加/predictions,我一开始就感觉不对,而且我仍然有剩余格式的困难——即删除lat=/lng=,首字母?从查询字符串。
是否可以以某种方式更改查询字符串选项以满足我的需要,或者请求包是否可能不是我想要的?
【问题讨论】:
标签: javascript node.js express npm http-get