我正在尝试使用javascript集成流量API并遇到问题,因为响应不包含CORS标头,所以我这样调用流量API:
fetch('https://traffic.api.here.com/traffic/6.3/incidents.json?bbox=38.74123075381228,-99.00329589843751;42.771211138625894,-94.010009765625&app_id=xx_appid&app_code=xx_appcode&c=US&lg=en&i18n=true&localtime=true&units=metric').then(x => console.log(x.json()));
如果我使用以下方法调用Places API:
fetch('https://places.cit.api.here.com/places/v1/discover/search?at=52.5044,13.3909&q=restaurant&app_id=oyncTDRmj660ffCKFjBD&app_code=1b5UNr1Z1vHiseGGj9zZoA&pretty&callback=myCallbackFunction&Accept-Language=de').then(x => console.log(x))
它会返回所有标题:
HTTP/1.1 200 OK
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: http://localhost:63342
Access-Control-Expose-Headers: X-Test, X-Map-Viewport, X-Mobility-Mode, X-
Accept-Encoding, X-Date, Authorization, Accept, Date, Accept-Encoding, User-Agent, Geolocation, Origin, Content-Type, DNT, Cache-Control, Last-Modified, Expires, Pragma, X-NLP-TID
有什么想法是我做错了什么还是有解决方法(不计算jsonp)?
答案 0 :(得分:0)
您是否尝试过将CORS授权添加到.htaccess文件中的标头?
答案 1 :(得分:0)
我发现当app_id和app_code无效或未指定时,服务为我们返回了CORS错误。这是使用Javascript API而非ReST进行的,但值得检查。