建立一個 API 伺服器要設定 Access-Control-Allow-Origin,這樣別的網站才能呼叫,
Koa
如果適用 Koa,只要做一個 mideleware 設定即可。
app.use(async (ctx, next) => {
ctx.set('Access-Control-Allow-Origin', '*');
await next();
});
Express
app.use(async (ctx, next) => {
res.set('Access-Control-Allow-Origin', '*')
});
如果只允許一個網域呼叫
將 * 換成該網域即可。
如果允許多個網域呼叫
使用 Swich 的方式,先讀取前端傳來得 headers.origin 來決定設定的 access 即可。3
其他設定
另外,還有 Access-Control-Allow-Methods 跟 Access-Control-Allow-Headers 可以設定,舉例來說,最近我做了一個 Koa.js 應用程式,就要設定 Access-Control-Allow-Headers 包括 content-type 才能傳送 post 請求。
留言
發佈留言