2017-02-14 8 views
0

CORSを有効にしたい。私はキーストーンを設定しました.set( 'cors allow origin'、true); これを私のルータに持っています: app.all( '/ api *'、keystone.middleware.cors);KeystoneJS:コルス発行

ただし、動作しません。

私は私がモデルを作成し、自動作成されたルータを使用してキーストーン/ libにcreateDynamicRouterを変更する必要がありますし、

router.all('/api*', function (req, res, next) { 
console.log('------------------------------------------------'); 
console.log('Notice: Enabling CORS headers.'); 
console.log('------------------------------------------------'); 
res.header('Access-Control-Allow-Origin', '*'); 
res.header('Access-Control-Allow Methods','GET,PUT,POST,DELETE,OPTIONS'); 
res.header('Access-Control-Allow-Headers', 'Content-Type'); 
next(); 
}); 

でこれを追加します。

私は何か間違っていますか?キーコードのコアコードではなく、自分のコードでcorsを有効にしたい

ありがとうございました。 mikeso

答えて

0

This GitHub Issueが役に立つかもしれません。つまり、このコードをroutes/index.jsファイルに追加する必要があります。

app.all('/api*', keystone.middleware.cors); 
app.options('/api*', function(req, res) { 
    res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization, X-XSRF-TOKEN'); 
    res.sendStatus(200); 
}); 
+0

私のルータに上記のコードを追加しましたが動作しません。私はモデルリストを持っており、このモデルAPIのルーターはキーストーンJSコアによって自動生成されます。しかし、上記のコードをcreateDynamicRouter.jsに追加すると、動作します。私は何が間違っていたのか分かりません – mikeso

関連する問題