Goで、私のフロントエンドがAngular(AngularJSなし)のAPIを開発していますが、APIをWebアプリケーションからAngularで呼び出すと、バックエンドにヘッダーが表示されません私のAPIはJWTベースの認証を持っているのでヘッダーhttpはAPIに配信されません
また、PostmanとGo Requestクライアントを使用してアプリケーションをテストしていて、ヘッダーがAPIに問題なく配信されていることを言いたいと思います。
以下は、バックエンドのCORSと私のフロントエンドからのAPI呼び出しです。
マイバックエンド:
func Cors() gin.HandlerFunc {
log.Println("CORS Middleware")
return func(c *gin.Context) {
c.Writer.Header().Add("Access-Control-Allow-Origin", "*")
c.Next()
}
}
私のフロントエンド:
getData() {
const auth = `Bearer ${this.token}`;
const headers = new Headers({
'Access-Control-Allow-Origin': '*',
'Accept': 'application/json',
'Authorization': auth,
});
const options = new RequestOptions(headers);
console.log(headers); //Here I can see
const products = this.http.get('localhost:8000/api/products', options)
.subscribe((response: Response) => {
this.data = response.json();
});
return products;
}
おかげで、私の英語のため申し訳ありませんが、私は私のCORSが問題を引き起こしていると思います。代わりに
const options = new RequestOptions(headers);
ドゥの
、これは関係のないことかもしれないが、あなたは「認証」の末尾にカンマを削除する必要があります:あなたのバックエンドについては
は、ここでの改善提案は(ほとんどの場合を処理する必要があります)ですAUTH、 – SolidSnake