即使提供了有效的凭据,/geocode
端点也将返回401。
以下请求:
GET /6.2/geocode.json?app_code=MY_APP_CODE& app_id=MY_APP_ID& searchtext=test HTTP/1.1
Host: geocoder.api.here.com
cache-control: no-cache
返回:
<ns2:Error xmlns:ns2="http://www.navteq.com/lbsp/Errors/1" type="PermissionError" subtype="InvalidCredentials">
<Details>invalid credentials for MY_APP_ID</Details>
</ns2:Error>
我正在使用免费增值计划,并且在使用app_id
和app_code
时收到上述答复。
编辑:演示凭证似乎是特定于域的,添加了一个Referer
标头和https://developer.here.com
作为请求成功的值。但是在用我自己的凭据交换app_id
和app_code
(不触摸任何其他参数)之后,我突然得到401(本质上排除了其他一些参数使请求变得无聊的可能性)。 / p>
答案 0 :(得分:0)
Demo应用程序ID和代码设置为特定于域的,并设置了到期日期。因此它不一定需要在您的浏览器中工作。您应该使用自己的凭据。使用我自己的凭据进行下面的示例查询,我可以得到响应。
https://geocoder.api.here.com/6.2/geocode.json?searchtext=200%20S%20Mathilda%20Sunnyvale%20CA&app_id=xxxx&app_code=xxxx&gen=9
响应:
Response
MetaInfo
Timestamp "2019-02-05T13:10:09.436+0000"
View
0
_type "SearchResultsViewType"
ViewId 0
Result
0
Relevance 1
MatchLevel "houseNumber"
MatchQuality
State 1
City 1
Street
0 0.9
HouseNumber 1
MatchType "pointAddress"
Location
LocationId "NT_nL.dzNwdSJgdcF4U8dYEiC_yADM"
LocationType "address"
DisplayPosition
Latitude 37.37634
Longitude -122.03405
NavigationPosition
0 {…}
MapView
TopLeft {…}
BottomRight {…}
Address
Label "200 S Mathilda Ave, Sunn…CA 94086, United States"
Country "USA"
State "CA"
County "Santa Clara"
City "Sunnyvale"
District "Heritage District"
Street "S Mathilda Ave"
HouseNumber "200"
PostalCode "94086"
AdditionalData […]