如何使用新的Apple Swift语言发布JSON [英] How to post a JSON with new Apple Swift Language

查看:104
本文介绍了如何使用新的Apple Swift语言发布JSON的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我(试图)学习Swift的Apple语言。我在Playground并使用Xcode 6 Beta。我正在尝试向本地NodeJS服务器执行简单的JSON Post。我已经开始搜索它并且主要教程解释了如何在项目中进行,而不是在PLAYGROUND,而不是写愚蠢的想法:谷歌它或它很明显或看这个链接或从不 - 测试和非功能代码

I'm (trying to) learn the Swift's Apple language. I'm at Playground and using Xcode 6 Beta. I'm trying to do a simple JSON Post to a local NodeJS server. I already had googled about it and the major tutorials explain how to do it in a project, not at PLAYGROUND, than don't write stupid thinks like: "google it" or "it's obvious" or "look this link" or never-tested-and-not-functional-code

这就是我正在尝试的:

var request = NSURLRequest(URL: NSURL(string: "http://localhost:3000"), cachePolicy: NSURLRequestCachePolicy.ReloadIgnoringLocalCacheData, timeoutInterval: 5)

var response : NSURLResponse?
var error : NSError?

NSURLConnection.sendSynchronousRequest(request, returningResponse: &response, error: &error)

我曾经尝试过:

var dataString = "some data"

var request = NSMutableURLRequest(URL: NSURL(string: "http://posttestserver.com/post.php"))
request.HTTPMethod = "POST"

let data = (dataString as NSString).dataUsingEncoding(NSUTF8StringEncoding)

var requestBodyData: NSData = data
request.HTTPBody = requestBodyData

var connection = NSURLConnection(request: request, delegate: nil, startImmediately: false)

println("sending request...")
connection.start()

谢谢! :)

推荐答案

Nate的答案很棒,但我必须更改request.setvalue才能在我的服务器上运行

Nate's answer was great but I had to change the request.setvalue for it to work on my server

// create the request & response
var request = NSMutableURLRequest(URL: NSURL(string: "http://requestb.in/1ema2pl1"), cachePolicy: NSURLRequestCachePolicy.ReloadIgnoringLocalCacheData, timeoutInterval: 5)
var response: NSURLResponse?
var error: NSError?

// create some JSON data and configure the request
let jsonString = "json=[{\"str\":\"Hello\",\"num\":1},{\"str\":\"Goodbye\",\"num\":99}]"
request.HTTPBody = jsonString.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: true)
request.HTTPMethod = "POST"
request.setValue("application/json", forHTTPHeaderField: "Content-Type")

// send the request
NSURLConnection.sendSynchronousRequest(request, returningResponse: &response, error: &error)

// look at the response
if let httpResponse = response as? NSHTTPURLResponse {
    println("HTTP response: \(httpResponse.statusCode)")
} else {
    println("No HTTP response")
}

这篇关于如何使用新的Apple Swift语言发布JSON的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆