2017-02-08 13 views
0

は「XXXX」とHTTP POSTリクエスト

'{"token":"xxxx", "extra_information": {"expires_in": xxxx, "refresh_token": "xxx", "user_id": "user_uuid", "token_type": "Bearer"}}' 

パラメータは、統合によって来るであろうバックエンドにPOSTリクエストを送信するためにペイロードに、このパラメータを持っています。私が書き込みした後、このXcodeのエラーが原因NSDateを受けるexpires_inパラメータに「期待辞書値の型文字列にタイプNSDateの値を変換できません」を見せて、この

func sendAuth() { 
    if let url = NSURL(string: "https://xxxxxxxxxxxx"){ 
     let request = NSMutableURLRequest(URL: url) 
     request.HTTPMethod = "POST" 
     request.addValue("application/json", forHTTPHeaderField: "Content-Type") 
     let token = AccessToken?() 
     let params = ["token" : (token?.tokenString)!, "refresh_token" : (token?.refreshToken)!,"expires_in" : (token?.expirationDate)!, "user_id" : "uber_uuid" , "token_type" : "Bearer"] as Dictionary <String,String> 

     let httpData = NSKeyedArchiver.archivedDataWithRootObject(params) 
     request.HTTPBody = httpData 
     let session = ServicesUtils.BaseSessionManager() 
     session.dataTaskWithRequest(request, completionHandler: { (data, response, error) -> Void in 
      var strData = NSString(data: data, encoding: NSUTF8StringEncoding) 
      print("\(strData)") 
     }).resume() 

を送信する関数を作成してみてくださいね。

編集1 - 変更後DictionayはstrDataは、それがNSDateなどを受け付けませんなぜあなたはparamsDictionary <String,String>としてのthatsをキャストしているため

+0

'token?.expirationDate'はNSDateを返しますか? –

+0

はい@DharmeshKheni – breadevelopment

+0

このエラーが発生するのはどのラインですか? –

答えて

0

その「NSDataの 『「予想引数の型にNSURLResponse』タイプの値を変換できません」というエラーが発生した受信あなたの辞書の価値。

Dictionary <String,AnyObject>のように変更する必要があります。

関連する問題