0

Ich habe die URL für Amazon SNS.Amazon SNS URL funktioniert auf Browser, aber nicht von Android App

http://sns.ap-northeast-1.amazonaws.com? 
AWSAccessKeyId=***********&Action=CreatePlatformEndpoint&PlatformApplicationArn=arn%3Aaws%3Asns%3Aap-northeast-1%3A776188326341%3Aapp%2FGCM%2Fmyapplication& 
SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2016-03-20T23%3A08%3A26.601Z 
&Token=APA91bFN3NV_cBqPtqc6vUSYm8C6o9m5UMoUAvp3qM6WWPlef5s8G8__RNQi_AljpgTJEq-hWqF7iQYJ-4OXKiRJc1uz5JvzDIXfgWd_5AC08S_m0bOIIdcWW2cMZjAyH7PrXpSu2h9j 
&Version=2010-03-31&Signature=%2B%2BjtNjQL7qgxUgnwJIwvxMyOdyQnxlmlHtzOJJ%2FQU6A%3D 

Diese URL sieht komplex aus, aber ich habe bestätigt, dass diese URL korrekt ist.

Ich stelle diese URL auf Browser funktioniert es gut.

Allerdings, wenn ich dies aus sehr einfachen Anwendung versuchen, Es gibt 400 schlechte Anfrage Fehler zurück.

Dies ist ein sehr einfacher Titan-Quellcode.

var xhrSNS = Ti.Network.createHTTPClient({ 
    onload :function(e) { 
     Ti.API.info("testPost query:" + JSON.stringify(e)); 
     Ti.API.info(this.responseText); 
    }, 
    onerror : function(e){ 
     Ti.API.debug("error:" + e.error); 
     }  
}); 
xhrSNS.open('GET',url); 
xhrSNS.send(); 

Ich habe nur verwirrt, warum die gleiche URL auf Browser und nicht Android funktioniert.

Darüber hinaus habe ich confirmed dieser Titan-Quellcode ist korrekt.

Gibt es noch andere Punkte, die ich überprüfen muss?

Antwort

0

Sie sollten das Protokoll von Amazon SNS überprüfen, um zu erfahren, warum der HTTP-Fehler 400 ausgelöst wurde. Manchmal weigern sich Web-Server-Anwendungen, die Client-Anfrage zu bearbeiten, beispielsweise weil die Firewall die Anfrage blockiert, weil sie keine korrekten Benutzer-Agent-Informationen hat. Das ist möglich. Sie sollten es also zuerst von der Serverseite aus untersuchen.

+0

Danke, das ist die richtige Idee. Ich versuche, den Login Amazon Server zu überprüfen. – whitebear

+0

Es gibt kein "Protokoll von Amazon SNS", das hier nützlich wäre. Es ist eine * schlechte Anfrage * Fehler. Die einzige zusätzliche verfügbare Information ist die Information in der Antwort. –