2017-12-28 28 views
0

私はGroceriesチュートリアルを手にしました。それから私は、ユーザーのサービスにアクセスして、ログインのURLを変更します。 NativeScriptでHttpリクエストが失敗するAngular

login(user: User) { 
let headers = new Headers(); 
headers.append("Content-Type", "application/json"); 

return this.http.post(
    "http://ws.u-vox.com/api/noauth/loginvenue", 
    JSON.stringify({ 
    username: user.email, 
    password: user.password, 
    }), 
    { headers: headers } 
) 
.map(response => response.json()) 
.do(data => { 
    Config.token = data.Result.access_token; 
}) 
.catch(this.handleErrors); 
} 

handleErrors(error: Response) { 
console.log(JSON.stringify(error.json())); 
return Observable.throw(error); 
} 

私はHTTPメッセージと端末上でJSONを期待するに記号を押し

。 しかし、代わりに私はこの混乱を得ている、と私は何が起こっているのか分からない。 NativeScriptアプリ外

CONSOLE LOG file:///app/shared/user/user.service.js:38:20: {"line":993,"column":38,"sourceURL":"file:///app/tns_modules/nativescript-angular/zone-js/dist/zone-nativescript.js","originalStack":"[email protected]:///app/tns_modules/nativescript-angular/zone-js/dist/zone-nativescript.js:993:38\nfile:///app/tns_modules/tns-core-modules/http/http-request/http-request.js:86:37\[email protected][native code]\[email protected]:///app/tns_modules/tns-core-modules/application/application.js:211:26\[email protected]:///app/tns_modules/nativescript-angular/platform-common.js:72:28\[email protected]:///app/tns_modules/nativescript-angular/platform-common.js:60:26\[email protected]:///app/main.js:7:57\[email protected][native code]\[email protected][native code]\n[native code]\[email protected][native code]","zoneAwareStack":"file:///app/tns_modules/tns-core-modules/http/http-request/http-request.js:86:37 [<root>]\[email protected][native code] [<root>]\[email protected]:///app/tns_modules/tns-core-modules/application/applicati 
CONSOLE ERROR file:///app/tns_modules/nativescript-angular/zone-js/dist/zone-nativescript.js:569:26: Unhandled Promise rejection: Animation cancelled. ; Zone: <root> ; Task: null ; Value: Error: Animation cancelled. [email protected]:///app/tns_modules/tns-core-modules/ui/animation/animation-common.js:98:31 [<root>] 

マイ終点作品:

HTTP/1.1 200 OK 
Server: nginx/1.10.3 (Ubuntu) 
Content-Type: application/json 
Transfer-Encoding: chunked 
Connection: close 
Cache-Control: no-cache, private 
Date: Thu, 28 Dec 2017 15:00:39 GMT 
Allow: POST 

{"username ... } 

答えて

1

私はこの問題は、CORS(クロスドメイン)の要求によるものだと思います。

まず、postリクエストを作成するURLにCORSが有効になっていることを確認します。

第二に、あなたはあなたのアプリケーションを実行するためのiOSを使用している場合、私は同等の設定があると思いますAndroid用/nativescript/App_Resources/iOS/info.plist:

<key>NSAppTransportSecurity</key> 
<dict> 
    <!--Include to allow all connections (DANGER)--> 
    <key>NSAllowsArbitraryLoads</key> 
    <true/> 
</dict> 

に以下を追加します。

+0

あなたは何日前に発見しましたが、戻ってくるのを忘れました;-) –

関連する問題