2017-09-13 1 views
0

Es zeigt den Fehler erhalten mag:Osm Bonuspack zeigt, dass ungültige Antwort vom Server, wenn ich die Länge und Breite

Invalid response from server: HTTP/1.1 429 Too Many Requests

Ich benutze ein, um den Namen zu bekommen, was ich gesucht werden soll:

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

im folgenden ist die Verwendung von GeocoderNominatim in einem AsyncTask:

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) {... 

Und ich Fehler habe:

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

Vor einigen Tagen kann ich das Bonuspack verwenden und ich habe, was ich will. Aber in letzter Zeit wird das Bonuspaket schlechter.

Antwort

0

HTTP/1.1 429 Too Many Requests bedeutet, dass Sie zu viele Anfragen von Ihrer IP-Adresse ausführen.

Die von Ihnen verwendete Nominatim-Instanz wird von Freiwilligen auf gespendeten Ressourcen ausgeführt. Bitte lesen Sie die usage policy, insbesondere den Teil über die Anzahl der Anfragen pro Sekunde.

Wenn Sie weitere Anforderungen ausführen müssen, dann entweder switch to a different Nominatim instance oder install your own Nominatim server.

+0

Aber ich will nur eine Adresse Platz. Und vor einigen Tagen kann ich die Adresse abrufen, indem ich sie benutze. – Beview

+0

Warten Sie einige Zeit und versuchen Sie dann, Verstärkung zu erzielen (indem Sie nur eine einzige Anforderung ausführen). Teilen Sie Ihre IP mit anderen Leuten? Es könnte auch ein vorübergehendes Problem dieser Nominatim-Instanz sein. Vielleicht können Sie osmbonuspack anweisen, einen anderen Server zu verwenden. – scai

0

von nominatim policies

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

haben Sie die Einrichtung eine App spezifische User-Agent

String MY_USERAGENT = "com.beview.mygeoapp"; 
GeocoderNominatim coderNominatim = new GeocoderNominatim(
      MainActivity.this, MY_USERAGENT); 
Verwandte Themen