【问题标题】:HTTP POST Request list of 5 cities in a country一个国家5个城市的HTTP POST请求列表
【发布时间】:2017-11-21 04:10:13
【问题描述】:

我正在尝试通过使用 HTTP Post Request 从该网站获取城市来获取一个国家/地区(例如:美国)的 5 个城市的列表:

http://www.webservicex.net/globalweather.asmx?op=GetCitiesByCountry

这是我使用的库:https://www.npmjs.com/package/http-post

这是我到目前为止所得到的,但它似乎不起作用:

var http = require('http');
http.post = require('http-post');

var url = 'http://www.webservicex.net/globalweather.asmx/GetCitiesByCountry';
var CountryName = 'United States';

http.post (url, CountryName, function(res) {

    res.setEncoding('utf8');
    res.on('data', function(chunk) {
        console.log(chunk);
    });

});

【问题讨论】:

    标签: javascript node.js http http-post


    【解决方案1】:

    您没有将密钥名称发送到 API。 只需修改您的代码以执行以下操作:

    var http = require('http');
    http.post = require('http-post');
    
    var url =
     'http://www.webservicex.net/globalweather.asmx/GetCitiesByCountry';
    var CountryName = 'United States';
    
    http.post (url, {CountryName:CountryName}, function(res) {
    
    res.setEncoding('utf8');
    res.on('data', function(chunk) {
        console.log(chunk);
    });
    
    
    });
    

    请注意,我在“CountryName”变量中发送国家/地区名称。

    【讨论】:

    • 非常感谢。请问为什么会这样?对不起,如果这是一个愚蠢的问题。那么我将如何在那个国家获得我想要的城市数量? (例如美国的前 5 个城市)
    • 在 http post 中,您需要发送名称、值对,您只是在发送值。 stackoverflow.com/questions/14551194/… 要获取城市列表,您必须解析生成的 xml 响应并提取城市名称。
    • 所以据我了解,我已经在这个“块”中获得了“数据”。现在,如果我需要获取城市列表,那么我必须解析这个 xml 响应“块”,然后我可以提取城市名称。那是对的吗?对不起,如果我的语法让你感到困惑。
    • 是的。为此,您将需要某种 xml 解析器库。
    • 非常感谢。非常感谢您花时间帮助我。
    猜你喜欢
    • 1970-01-01
    • 2017-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多