【问题标题】:HTTPS request with query strings in NodeJSNodeJS 中带有查询字符串的 HTTPS 请求
【发布时间】:2016-06-01 10:57:51
【问题描述】:

我正在尝试使用 https 模块中的 get 方法向 API 发出请求。

查看HTTPS request in NodeJS,我的路很长,但我的请求似乎没有包含查询参数……

使用上面的示例和我的模组:

var $q = require('q'),
    _ = require('lodash'),
    path = require('path'),
    Qs = require('qs'),
    path = require('path'),
    uuid = require('node-uuid'),
    https = require('https');

var params = {
  schema: '1.0',
  form: 'json',
  username: 'name'
}
var options = {
  host: 'openshift.redhat.com',
  port: 443,
  path: '/broker/rest/api',
  query: params
};

var req = https.get(options, function(res) {

【问题讨论】:

    标签: node.js https query-string


    【解决方案1】:

    根据https://nodejs.org/api/https.html#https_https_request_options_callback,没有名为“查询”的选项。您需要将查询参数包含在“路径”中。

    请求路径。默认为“/”。如果有的话,应该包括查询字符串。例如。 '/index.html?page=12'。

    【讨论】:

    • 太好了!不知道我从哪里得到query 选项......显然我还不能接受你的回答,但我会的!谢谢
    • 您还可以使用github.com/ljharb/qs 轻松地将对象序列化为查询字符串,而不必手动执行该字符串破解。
    • 我们实际上是在使用qs,所以从上面的例子中,我有:+ path: '/broker/rest/api' + Qs.stringify(params)
    猜你喜欢
    • 2012-01-28
    • 2013-05-30
    • 1970-01-01
    • 2017-06-02
    • 2013-04-06
    • 2021-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多