2017-09-13 1 views
0

그것은 오류를 보여줍니다 보여줍니다OSM Bonuspack 내가 경도와 위도를 얻으려면 서버에서 잘못된 응답이

if (v.getId() == R.id.find) { 
    String keyword = name.getText().toString(); 
    new UpdateSearch().execute(keyword); 
    find.setEnabled(false); 
} 

다음은 AsyncTask를에 GeocoderNominatim를 사용하는 것입니다 :

public class UpdateSearch extends AsyncTask<String, Void, List<Address>> { 

    @Override 
    protected List<Address> doInBackground(String... params) { 
     // TODO Auto-generated method stub 

     GeocoderNominatim coderNominatim = new GeocoderNominatim(
       MainActivity.this); 
     List<Address> geoResults = null ; 
     try { 
      geoResults = coderNominatim.getFromLocationName(params[0], 3); 
      Log.d("aaaaaaaaaaaaaa",String.valueOf(coderNominatim)); 
     } catch (IOException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     return geoResults; 
    } 

    @Override 
    protected void onPostExecute(List<Address> result) {... 

그리고 나는 오류를 가지고 :

09-13 15:04:39.352: D/BONUSPACK(547): GeocoderNominatim::getFromLocationName: http://nominatim.openstreetmap.org/search?format=json&accept-language=zh&addressdetails=1&limit=3&q=%E6%95%85%E5%AE%AB 09-13 15:04:39.355: W/System(547): ClassLoader referenced unknown path: /system/framework/tcmclient.jar 09-13 15:04:40.918: E/BONUSPACK(547): Invalid response from server: HTTP/1.1 429 Too Many Requests

며칠 전에 나는 bonuspack을 사용할 수 있으며 원하는 것을 얻었습니다. 그러나 최근 보너스 팩은 더 나 빠졌다.

답변

0

HTTP/1.1 429 Too Many Requests은 IP 주소에서 너무 많은 요청을 수행하고 있음을 의미합니다.

사용중인 Nominatim 인스턴스는 자원자가 기증 한 리소스를 통해 실행됩니다. usage policy, 특히 초당 요청 수에 관한 부분을 읽어보십시오.

더 많은 요청을 수행해야하는 경우 switch to a different Nominatim instance 또는 install your own Nominatim server 중 하나입니다.

+0

에있다 그러나 나는 단지 한 곳의 주소를 원한다. 그리고 며칠 전에 그것을 사용하여 주소를 얻을 수 있습니다. – Beview

+0

약간의 시간을 기다린 다음 게인을 시도하십시오 (단일 요청 만 수행하여). 다른 사람들과 IP를 공유합니까? 이 Nominatim 인스턴스의 일시적인 문제 일 수도 있습니다. 다른 서버를 사용하도록 osmbonuspack에 지시 할 수 있습니다. – scai

0

Provide a valid HTTP Referer or User-Agent identifying the application (stock User-Agents as set by http libraries will not do).

nominatim policies에서 당신은 설정 응용 프로그램 특정 사용자 에이전트

String MY_USERAGENT = "com.beview.mygeoapp"; 
GeocoderNominatim coderNominatim = new GeocoderNominatim(
      MainActivity.this, MY_USERAGENT); 
관련 문제