首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用node.js发送请求的百度地图API得到错误的反应?

使用node.js发送请求的百度地图API得到错误的反应?
EN

Stack Overflow用户
提问于 2016-05-21 13:35:10
回答 1查看 295关注 0票数 0

我试图使用node.js发送http requst,并调用百度地图API。我的密码吹响了:

如果您通过url并直接使用浏览器,它将以正确的格式给出正确的响应。

但是当我使用节点发送请求时,我会遇到问题。

代码语言:javascript
复制
var request = require('request');
  request(
    { method: 'GET',
      uri: 'http://api.map.baidu.com/place/v2/suggestion?query=beijing&region=131&output=json&ak=****hLQKu9ap9fPq5N1ExF1Kk7xe5Eah'
    }
  , function (error, response, body) {

      res.json({
        res:response
      })
    }
  )

同时,如果我更改url包含一些中文内容,比如:

代码语言:javascript
复制
http://api.map.baidu.com/place/v2/suggestion?query=北京理工大学&region=北京&output=json&ak=****hLQKu9ap9fPq5N1ExF1Kk7xe5Eah

在node.js中,它将给出状态代码400和完全错误的响应。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-21 14:00:33

必须用encodeURI对uri进行编码。

代码语言:javascript
复制
uri: encodeURI('http://api.map.baidu.com/place/v2/suggestion?query=北京理工大学&region=北京&output=json&ak=3104hLQKu9ap9fPq5N1ExF1Kk7xe5Eah')
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37363656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档