Expressフレームワークのクロスドメインの問題

app.jsファイルで設定

​
var allowCrossDomain = function(req, res, next) {
  res.setHeader("Access-Control-Allow-Origin", "http://localhost:3000");
  res.setHeader('Access-Control-Allow-Methods', 'PUT,GET,POST,DELETE,OPTIONS');
  res.setHeader('Access-Control-Allow-Headers', 'content-type,x-requested-with,Authorization, x-ui-request,lang');
  res.setHeader('Access-Control-Allow-Credentials', 'true');
  res.setHeader("Content-Type", "application/json");
  next();
};
app.use(allowCrossDomain);

​

 

インデックスルートの設定が機能せず、これ

 

res.setHeader("Access-Control-Allow-Origin", "http://localhost:3000");

 

*を記述してはならず、ドメイン名を指定する必要があります。そうしないと、送信される非同期リクエストにCookieが含まれず、セッションが有効にならず、セッションが未定義になります。

 

res.setHeader('Access-Control-Allow-Credentials', 'true');

 

非同期Cookieを設定するために使用されます。Access-Control-Allow-Originが*を書き込む場合、この設定は役に立ちません。

おすすめ

転載: blog.csdn.net/u012149637/article/details/89011550