Frage
Wie kann ich eine API -Anfrage von einer in meinem Konto installierten angepassten App an die API eines anderen Kontos senden, ohne die unten stehende Fehlermeldung zu erhalten?
error ist keine proxyfähige URI
Antwort
Das Standardverhalten vonclient.request
ist die Anfrage über die Proxy -Schicht von Zendesk zu senden, was dazu führt, dass die 403 URI -Antwort keine proxyfähige ist.
Um einen client.request von einer angepassten App in Ihrem Konto bei der API eines anderen Zendesk -Kontos anzufordern, gehen Sie zu cors: true
im Objekt „request options“. Auf diese Weise kann die Anfrage die Proxy -Ebene von Zendesk umgehen, was verhindert, dass HTTP -Anfragen von einem Zendesk zu einem anderen gesendet werden.
// make a request from a custom app in one Zendesk to the API of another Zendesk
function newRequest(){
var options = {
url: 'https://subdomain.zendesk.com/api/v2/....',
headers: { "Authorization": "Bearer OAUTH_TOKEN"},
type: 'POST',
data: JSON.stringify({my:"json", values:"go here"}),
contentType: "application/json",
cors: true
}
client.request(options).then(
function(response) {
console.log(response);
});
}
Ein Hinweis zu clientseitigen und serverseitigen Anfragen
Jeder unserer API -Endpunkte implementiert CORS. Wenn die Anfrage von der App also clientseitig stammt, schlägt sie mit CORS-Antworten fehl, es sei denn , OAuth wird verwendet. Wenn nur Lesedaten (GET) erforderlich sind, können Sie das OAuth-Token auf Lesezugriff auf bestimmte Ressourcen beschränken und diese clientseitig implementieren.
Wenn die Anfrage der App an die andere Zendesk -API Daten schreibt (PUT, POST), ist dies keine sichere Option, da das Token dem Netzwerkverkehr ausgesetzt ist. In den meisten anderen Workflows können sichere Einstellungenverwendet werden, um zu verhindern, dass das Token offengelegt wird.
Gesicherte Einstellungen funktionieren bei diesem Workflow jedoch nicht, da die Anfrage über die Proxy -Ebene von Zendesk gesendet werden muss. Wenn Daten geschrieben werden müssen, ziehen Sie serverseitige Lösungen in Betracht, bei denen die Anfrage an die API des anderen Zendesks serverseitig gehandhabt und die Antwort an die App zurückgesendet wird.
Hinweis zur Übersetzung: Dieser Beitrag wurde mit automatischer Übersetzungssoftware übersetzt, um dem Leser ein grundlegendes Verständnis des Inhalts zu vermitteln. Trotz angemessener Bemühungen, eine akkurate Übersetzung bereitzustellen, kann Zendesk keine Garantie für die Genauigkeit übernehmen.
Sollten in Bezug auf die Genauigkeit der Informationen im übersetzten Beitrag Fragen auftreten, beziehen Sie sich bitte auf die englische Version des Beitrags, die als offizielle Version gilt.
0 Kommentare
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.