This action will force synchronization from APIJSON/APIJSON-Demo, which will overwrite any changes that you have made since you forked the repository, and can not be recovered!!!
Synchronous operation will process in the background and will refresh the page when finishing processing. Please be patient.
//// ViewController.swift// testswift//// Created by TommyLemon on 17/11/28.// Copyright © 2017年 https://github.com/TommyLemon/APIJSON . All rights reserved.//import UIKitclass ViewController: UIViewController {override func viewDidLoad() {super.viewDidLoad()// Do any additional setup after loading the view, typically from a nib.test()}override func didReceiveMemoryWarning() {super.didReceiveMemoryWarning()// Dispose of any resources that can be recreated.}/*** 通过POST请求测试APIJSON*/func test() {let url = "http://apijson.cn:8080/get";//要发送的请求数据let json = [//返回数据太长 "[]": ["User": [ //如果对象value是空的,请用[:]表示value,否则会被Swift解析为空数组[],而不是空对象{}"sex": 1]//]]let req = toJSONString(json);print("start http request...\n\nURL = " + url + "\nRequest = \n" + req)//生成UI <<<<<<<<<<<<<<<<<<<<<<let requestLabel = UILabel(frame:CGRect(x:20, y:10, width:400, height:130))requestLabel.text = "Request:\n" + req;requestLabel.numberOfLines = 6self.view.addSubview(requestLabel)let responseLabel = UILabel(frame:CGRect(x:20, y:130, width:400, height:600))responseLabel.text = "request..."responseLabel.numberOfLines = 100self.view.addSubview(responseLabel)//生成UI >>>>>>>>>>>>>>>>>>>>>//请求URLlet request = NSMutableURLRequest(url: URL(string: url)!)request.httpMethod = "POST"//设置发送的数据格式为JSONrequest.setValue("application/json", forHTTPHeaderField: "Content-Type")do {request.httpBody = try JSONSerialization.data(withJSONObject: json, options: JSONSerialization.WritingOptions.prettyPrinted)} catch {print("Something went wrong!")}//默认session配置let config = URLSessionConfiguration.defaultlet session = URLSession(configuration: config)//发起请求let dataTask = session.dataTask(with: request as URLRequest) { (data, response, error) inprint("\n\nreceived result!\n\n")print(data)print(response)print(error)//数据类型转换let jsonData:NSDictionary = try! JSONSerialization.jsonObject(with: data!, options: .mutableContainers) as! NSDictionaryprint(jsonData)let res:String = self.toJSONString(jsonData as! [String : Any]);print("Response = \n" + res)//显示返回结果DispatchQueue.main.async {responseLabel.text = "Response:\n" + resprint("set text end\n\n")}}//请求开始dataTask.resume()}func toJSONString(_ jsonData: [String: Any]!) -> String {guard let data = try? JSONSerialization.data(withJSONObject: jsonData!, options: [JSONSerialization.WritingOptions.prettyPrinted]) else {return ""}let str = String(data: data, encoding: String.Encoding.utf8)return str!}}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。