herokuにexpressをデプロイして別サーバからアクセスしたら
Origin http://〜 is not allowed by Access-Control-Allow-Origin.
といって怒られた。
そこでexpress側から「Access-Control-Allow-Origin」ヘッダを送出してやるようにした。
すると今度はアプリ自体がクラッシュしてしまうご様子。
「heroku logs --tail」としてログを見ながらアクセスしてみると
Error: Can't set headers after they are sent.
というエラーが出てアプリが停止してしまっていた。
ぐぐってみるとStackOverflowに同様の質問がありました。
res.writeHeadしたらres.writeかres.endしか使えないよ
ということらしい。
res.writeHead(200, {
'Access-Control-Allow-Origin':'*'
});
res.json(data);
となっていたのを
res.header(
'Access-Control-Allow-Origin','*'
});
res.json(data);
としたら行けました。
###ぐぐって出てきたソースを切り貼りしてハマってぐぐって解決。
むむぅ。