jsonp有什么限制一定要jsonp吗是不是一定得可执行的js不能json?如果我要获取http://apistore.baidu.com/microservice/cityinfo?cityname=%E5%8C%97%E4%BA%AC像这样的json数据只能通过后台吗
2 回答
千巷猫影
TA贡献1829条经验 获得超7个赞
jsonp就仅仅相当与在HTML标签了动态创建了一个script标签src="URL/path/to/data.js",所以说jsonp的数据可以是任意的格式,但是,要想让你已经写好的代码读取到这一段数据,使用的方式就是先定义好一个函数,jsonp返回的是这个函数调用,然后参数就是返回的数据。当然,如果你足够聪明,能想出其他的方式也可以。所以说jsonp仅仅可以发送get请求,不能发送post请求,其实jsonp的存在仅仅是为了解决跨域请求。获取这段代码,跨域的话前端没有什么好的方法。
拉风的咖菲猫
TA贡献1995条经验 获得超2个赞
百度返回的不是jsonp,jsonp应该是callback({"errNum":0,"retMsg":"success","retData":{"cityName":"\u5317\u4eac","provinceName":"\u5317\u4eac","cityCode":"101010100","zipCode":"100000","telAreaCode":"010"}})如果百度开放了Access-Control-Allow-Origin:*可以通过Ajax获取,否则这个只能在后台获取然后前端调用
添加回答
举报
0/150
提交
取消