2016-09-01 6 views
1

WebSocket経由で送信されたチャレンジに基づいてSwift 2.2でPOSTリクエストを送信しようとしています。現在のコードはhereです。 respondToChallenge関数では、WebSocketで送信されたJSONを実行する必要があります。WebSocketを介して送信されたJSONデータからSwiftでPOSTリクエストを送信

[{ 
    "meth": "POST", 
    "host": "https://openpokemap.pw" 
    "cont": "application/x-www-form-urlencoded" 
    "user": "Firefox 42...." 
    "data": "sjdbsjkbd" //Base64 encoded byte array 
}] 

そして、私はまた、JSONで宣言されている「ホスト」の上にステータスコード200をPOSTする必要があります。

これは例の課題は次のようになります。

ありがとう、私には簡単に行く、これは私の最初の投稿です。

答えて

0

JSONレスポンスから、ホストをシリアル化した後でかなり簡単に返すことができます。

do { 
    let dict = try NSJSONSerialization.JSONObjectWithData(challenge.dataUsingEncoding(NSUTF8StringEncoding)) as! [String: AnyObject] 
    let host = response["host"] as? String 
    print("Host: \(host)") 
} catch { 
    print("JSON error: \(error") 
} 

そこから、NSURLSessionを使用してPOST要求を行うことができます。

+0

これはnillを返します。 –

+0

今すぐお試しいただけますか?その挑戦は、実際には文字列ではなく、辞書であることに気付きました。 – AppleBetas

+0

それはうまくいった、ありがとう。しかし、この時点で私はすでに解決策を持っていました.D –

関連する問題