2016-07-05 24 views
0

非常に奇妙なことが起こっています。私のMacでは、私はAppleのHTTP2 APNS APIにカールすることができ、私は次の応答と一緒に通知を受け取る:Curl to APNSはMacでは動作しますが、Windowsでは動作しませんか?

POST /3/device/{MYTOKEN} HTTP/1.1 
Host: api.push.apple.com 
User-Agent: curl/7.49.1 
Accept: */* 
apns-topic: com.domain.myapp 
Content-Length: 40 
Content-Type: application/x-www-form-urlencoded 

Connection state changed (MAX_CONCURRENT_STREAMS updated)! 
We are completely uploaded and fine 
HTTP 1.0, assume close after body 
HTTP/2 200 
apns-id: 9DF86348-7133-8AF2-746D-EC1528769AD8 

Closing connection 0 
TLSv1.2 (OUT), TLS alert, Client hello (1): 

私は、サーバー上で同じことを行う場合、私は(Windowsのサーバーからの通知を送信したいです)、私はまったく同じ応答を得る! - デバイス上の通知はありませんか?

これはどのように考えられますか?

答えて

1

OK - 解決しました!

問題は投稿されたデータの引用文字です。正しい書式は次のとおりです:

curl -d "{\"aps\":{\"alert\":\"test\",\"sound\":\"default\"}}" 

外側はMacでは動作していましたが、ウィンドウでは動作しませんでした。 Windowsマシン上でAppleからokメッセージを受け取ったのはまだ不思議ですが、通知は一切ありません。

+0

PHPカールでうまくできましたか? – Desmond

+0

@Desmond - 正確ではありません。私はphlコードからのバックティックでシェルからcurlコマンドを呼び出すことに巻き込まれました!理想的ではありませんが、誰かがphp用のWindowsバイナリを親切に作るまでは解決策です。私はここからカールバイナリを使いました:http://winampplugins.co.uk/curl/ – markt

関連する問題