Es ist das erste Mal, dass ich GAE-Endpunkte in einem Android Studio-Projekt verwenden möchte. Also, ich habe einfach die Anweisungen von Google (https://cloud.google.com/tools/android-studio/app_engine/) gefolgt. Aber ich erhalte jedes Mal einen Fehler von 403, wenn ich versuche, ein Backend-Modul zu erstellen oder auszuführen. Hier ist die Botschaft:403 Verbotener Fehler beim Erstellen des Google Endpoints-Back-Ends in Android Studio
Error:Execution failed for task ':backend:appengineEndpointsGetClientLibs'.
> There was an error running endpoints command get-client-lib: 403 Forbidden
<!DOCTYPE html>
<html lang=en>
<meta charset=utf-8>
<meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width">
<title>Error 403 (Forbidden)!!1</title>
<style>
*{margin:0;padding:0}html,code{font:15px/22px arial,sans-serif}html{background:#fff;color:#222;padding:15px}body{margin:7% auto 0;max-width:390px;min-height:180px;padding:30px 0 15px}* > body{background:url(//www.google.com/images/errors/robot.png) 100% 5px no-repeat;padding-right:205px}p{margin:11px 0 22px;overflow:hidden}ins{color:#777;text-decoration:none}a img{border:0}@media screen and (max-width:772px){body{background:none;margin-top:0;max-width:none;padding-right:0}}#logo{background:url(//www.google.com/images/branding/googlelogo/1x/googlelogo_color_150x54dp.png) no-repeat;margin-left:-5px}@media only screen and (min-resolution:192dpi){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat 0% 0%/100% 100%;-moz-border-image:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) 0}}@media only screen and (-webkit-min-device-pixel-ratio:2){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat;-webkit-background-size:100% 100%}}#logo{display:inline-block;height:54px;width:150px}
</style>
<a href=//www.google.com/><span id=logo aria-label=Google></span></a>
<p><b>403.</b> <ins>That’s an error.</ins>
<p>Your client does not have permission to get URL <code>/_ah/api/discovery/v1/apis/generate/rest</code> from this server. <ins>That’s all we know.</ins>
Normalerweise könnte ich diese Art von Fragen unterdrücken, indem ein Proxy in den Einstellungen aktivieren. Aber für diesen Fehler änderte sich nichts, nachdem ich drei Tage gegoogelt hatte und alle Lösungen durchblitzte. Jeder hat den gleichen Fehler gefunden? oder eine Lösung/Anregung kennen?
Bearbeiten Ich führe die Vorlage Endpoint-Projekt mit Beispiel MyBean und MyEndpoint-Klassen ohne Änderungen. Hier verwandten build.gradle Datei:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.google.appengine:gradle-appengine-plugin:1.9.18'
}
}
repositories {
mavenCentral();
}
apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'appengine'
sourceCompatibility = JavaVersion.VERSION_1_7
targetCompatibility = JavaVersion.VERSION_1_7
dependencies {
appengineSdk 'com.google.appengine:appengine-java-sdk:1.9.18'
compile 'com.google.appengine:appengine-endpoints:1.9.18'
compile 'com.google.appengine:appengine-endpoints-deps:1.9.18'
compile 'javax.servlet:servlet-api:2.5'
}
appengine {
downloadSdk = true
appcfg {
oauth2 = true
}
endpoints {
getClientLibsOnBuild = true
getDiscoveryDocsOnBuild = true
}
}
Zeigen Sie uns bitte den entsprechenden Java-Code. –
@TimBiegeleisen, Java-Code ist unverändert von Beispiel Hello Endpoints! Projekt. Ich habe hinzugefügt, Gradle Build-Einstellungen im Bearbeitungsbereich –