私のアプリケーションは現在ファイル システムから開かれており、クラウド 9 でホストされているサーバーにリクエストを送信しています。同じページから情報を送信するたびに、同じページから 2 つのリクエストを送信します。
1 つの要求は新しいリソースの作成であり、2 つ目の要求はファイルのアップロードです。最初のリクエストの完了時に、認証に使用されるため、2 番目のリクエストを正常に処理するために重要なセッション変数を設定しましたが、2 番目のリクエストを実行すると、変数が存在しません。
クライアントに保存する必要があるセッションIDプレースホルダーは最初のリクエストの後にそこにあるはずなので、それは関連しているように感じますが、そうではありません.Angularが処理している可能性があると疑っています.要求が競合する可能性があります。
セッション ID を取得するために、アプリケーションのスクリプト ファイルをダウンロードし、他のすべてをディスクからロードして、sid を取得します。
私のアプリのURLをpngに保持することは、おそらく最良の決定ではない編集
クライアント側では、これがリクエストを実行する方法です。
$http.post('www.myurl.com/firstBatch',app).success(function(data)
{
var res = data;
if(res == 'true')
{
sendSecondBatch($scope, function(formData)
{
var tok = encodeURIComponent($scope.application.title);
$http.post('www.myurl.com/secondbatch', formData, {
headers : {'Content-Type' : undefined},
transformRequest : angular.identity
}).success(function(data){
//data
if(data == 'true')
{
//both of the request's succeeded
}
})
});
}
});
サーバー側には、1 つの要求を処理するルートがあり、別のルートが 2 番目の要求を処理します。
function handleFirst()
{
//logic
req.session.myarray =['myname'];
}
別のルートにあります
function handleSecond()
{
var myname = req.sesssion.myarray[0];
}
myname
セッションが持続しなかったことを示唆する未定義です