2017-02-12 4 views
0

スタックを検索して同様の質問を確認しても、これは動作しません。私を助けてください!サーバーへのポストリクエストを行うときにJsonエラーが発生する

私は、サーバーへの経由のユーザ名を送信しても、バックハードコーディングされたデータを返すことができます...ちょうど作業それを得るために -

私がやろうとしていますすべては私のサーバーにユーザー名を提出するとMySQLに保存していますiOSシミュレータにラベルのテキストを設定しますが、データをMySQLに保存する機能を追加するとエラーが発生します: "Error Domain = NSCocoaErrorDomain Code = 3840"文字0の値が無効です。 "UserInfo = { NSDebugDescription =文字0の値が無効です。} "

奇妙な命名規則で申し訳ありませんが、私は次のチュートリアルから逸脱しています。ありがとうございます!

SWIFT 3:

func Apitest(name: String) { 

    let json = ["user" : name] 

    do { 
     let jsonData = try JSONSerialization.data(withJSONObject: json, options: .prettyPrinted) 

     let url = NSURL(string: "I put the actual path here, don't worry")! 
     let request = NSMutableURLRequest(url: url as URL) 
     request.httpMethod = "POST" 

     request.setValue("application/json; charset=utf-8", forHTTPHeaderField: "Content-Type") 
     request.httpBody = jsonData 

     let task = URLSession.shared.dataTask(with: request as URLRequest){ data, response, error in 
      if error != nil{ 
       print("First Error -> \(error)") 
       return 
      } 
      do { 
       let result = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as? [String:AnyObject] 
       print("Result -> \(result!)") 

       let label = result?["messages"] as! String 

       print(label) 

       self.setupLabel(text: label) 

      } catch { 
       print("Second Error -> \(error)") 
      } 
     } 

     task.resume() 
    } catch { 
     print(error) 
    } 
} 

APIコード(パイソン/フラスコ)

@app.route('/api/get_messages/') methods=['POST']) 
def get_messages(): 
json = request.get_json() 

api_test(json['user']) 

return jsonify({'messages':json['user']}) 

MySQLの機能:Lから

def api_test(user): 
c, conn = connection() 
c.execute("INSERT INTO users (email) VALUES (%s)", (user)) 
conn.commit() 
conn.close() 
c.close() 

答えて

0

あなたのコードで私はあなたの挿入コマンドは:

c.execute("INSERT INTO users (email) VALUES (%s)", (user)) 
+0

すべきだと言っています。私はその行を貼り付けなかった、私はそれをタイプした。 – user3344239

関連する問題