0
私は現在Swiftアプリケーションをコーディングしており、JSON文字列を含むリクエストを.NETバックエンド/ Webサービスに送信したいとします。しかし、このコードを使用している場合:ASP.netのSwift/iOSクライアントリクエストからPOSTデータを受信
ASP.NET:
String jsonString = Request.Form["jsonString"];
スウィフト:
let url:NSURL = NSURL(string: "https://www.backend.com/backend.aspx")!;
let request = NSMutableURLRequest(URL: url);
request.HTTPMethod = "POST";
request.HTTPBody = ("jsonString=" + jsonString).dataUsingEncoding(NSUTF8StringEncoding)!;
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithRequest(request) {
(
let data, let response, let error) in
guard let _:NSData = data, let _:NSURLResponse = response where error == nil else {
print("error")
return
}
let dataString = NSString(data: data!, encoding: NSUTF8StringEncoding)
print(dataString)
}
task.resume() }
私のasp.netのバックエンド上の文字列がnullであることが判明しました。何らかの理由で、私は要求から検索される文字列を取得できないようです。何か案は?私はPOSTリクエストを処理するためにAlamofireモジュールを使用し、事前
注意: 'guard let _:NSData'部分は恐ろしいです。ラップ解除された値を展開して破棄し、実際のエラーを出力する代わりにprint( "error")を使用します。後で、データを再度ラップする必要があります...悪い、悪い、悪い。私が人々にそれを使わないように言うことができるように、チュートリアル/サイトのURLを教えてください...:p – Moritz
@EricD私はそれをここで見つけました:http://www.kaleidosblog.com/nsurlsession-in-データの即時取得 問題の解決方法を知っていますか? ASPで私の要求が空である理由を理解できないようです。 –
ありがとうございました。 //あなたはASP側でnullを返すと言いますが、Swift側では何が起こっていますか?文字列はポストされていますか?エラーはありますか? – Moritz