2016-05-24 19 views
0

マイグレーション・ガイドに従って、Linuxサーバー上でMongodb、NodeJS、Parseサーバーをローカルにセットアップしました。私はREST APIを使ってゲームにログインし、ParseのS3がまだホストしているゲーム関連のファイルをダウンロードすることができます。しかし、POSTやPUT httpリクエストをしているときはいつでも、404エラーが見つかりません。パーズ・マイグレーション後に404 Not Foundエラーが発生しました

これまでのところ、私が試した:/etc/mongod.conf 2のHTTPインターフェースを有効にする 1.ポストのURLをチェックし、彼らが正しいに見えます。ログアウトのために私は投稿要求をhttp://<server-ip-address:1337>/parse/logoutに送っています

私はサーバー上の設定に問題があると考えています。
誰も同じような問題に遭遇しましたか?

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

答えて

0

私は解決策を見つけました。

ログアウト問題:

ユニティのWWWクラスは、有効なPOSTDATAでのみ動作するようです。ログアウトは必須のカスタムHTTPリクエストヘッダだけであるため、WWWインスタンスを作成するときに私はpostDataを提供しませんでした。私はダミーのバイト配列を作成し、WWWコンストラクタに渡した後に動作します。

WWW www = new WWW(url, null, headers) // return 404 

WWW www = new WWW(url, new byte[1], headers) // worked 

PUT問題:

マイリクエストヘッダは、PUTに設定 'X-HTTP-法-上書き' を持っていたが、私はmiddlewares.js

内allowMethodOverride機能を修正するまで、それがサーバーに影響を及ぼしませんでした
var allowMethodOverride = function allowMethodOverride(req, res, next) { 

    if (req.method === 'POST' && req.body._method) { 
    req.originalMethod = req.method; 
    req.method = req.body._method; 
    delete req.body._method; 
    } 
    // Also detect these override request header sent by Unity clients 
    else if (req.method === 'POST' && req.get('X-HTTP-Method-Override')) { 
    req.originalMethod = req.method; 
    req.method = req.get('X-HTTP-Method-Override'); 
    } 
    next(); 
}; 
関連する問題