Ich versuche, Twitter API in meiner App zu verwenden.Aufruf von Twitter API von Postman funktioniert, aber von Angular 2 App tut es nicht '
Wenn ich es von Postman laufen, funktioniert es gut.
Allerdings, wenn ich es von meiner app laufen, mit Google Chrome ich
XMLHttpRequest nicht https://api.twitter.com/1.1/search/tweets.json?q=canada laden kann. Antwort auf Preflight-Anforderung nicht übergeben Zugriffskontrolle überprüfen: Nein 'Access-Control-Allow-Origin' Header ist auf der angeforderten Ressource vorhanden. Origin 'http://localhost:3000' ist daher nicht erlaubt Zugriff. Die Antwort hatte HTTP-Statuscode 400.
Hier ist mein Code für sie
...
getTweets(hashtag : string){
var headers = new Headers();
headers.append('Authorization', 'Bearer AAAAAAAAAAAAAAAAAAAAAONruQAAAAAAfxQda4njz64axXN9sw4U0oU%3Dr1niTwKwXoOZXmZczDKgN0wWHWEMPrPcnXXMgVQhiTIzays7J');
var requestOptions = new MyRequest();
requestOptions.headers = headers;
return this.http.get('https://api.twitter.com/1.1/search/tweets.json?q=montreal', requestOptions);
}
}
class MyRequest implements RequestOptionsArgs {
public headers: Headers;
}
Sie h habe den Header 'Access-Control-Allow-Origin' nicht zu Ihren Headern hinzugefügt. Der Fehler sagt Ihnen eindeutig, dass es erforderlich ist. – Brad