版权声明:本文为博主原创文章,未经博主允许不得转载。

import UIKit

import Alamofire

class ViewController: UIViewController {

var phoneNumber =UITextField()

var passNumber =UITextField()

var confirmButton:UIButton!

overridefunc viewDidLoad() {

super.viewDidLoad()

self.view.backgroundColor =UIColor.whiteColor()

//添加所有子控件

self.addAllSubViews()

}

//添加所有子控件

func addAllSubViews()

{

// 手机号输入提示

var phoneText =UILabel(frame:CGRectMake(30,240,UIScreen.mainScreen().bounds.size.width-60,30))

phoneText.text ="请输入手机号"

self.view.addSubview(phoneText)

//手机号输入框

var phoneNumber =UITextField(frame:CGRectMake(30,270,UIScreen.mainScreen().bounds.size.width-60,30))

phoneNumber.placeholder ="请输入手机号码"

phoneNumber.text ="18000000005"

phoneNumber.

phoneNumber.layer.borderColor =UIColor.lightGrayColor().CGColor

phoneNumber.

phoneNumber.keyboardType =UIKeyboardType.NumberPad

self.view.addSubview(phoneNumber)

self.phoneNumber = phoneNumber

/// 密码输入提示

var passText =UILabel(frame:CGRectMake(30,300,UIScreen.mainScreen().bounds.size.width-60,30))

passText.text ="请输入密码"

self.view.addSubview(passText)

// 密码输入框

var PassNumber =UITextField(frame:CGRectMake(30,330,UIScreen.mainScreen().bounds.size.width-60,30))

PassNumber.placeholder ="请输入密码"

PassNumber.text ="123456"

PassNumber.

PassNumber.layer.borderColor =UIColor.lightGrayColor().CGColor

PassNumber.

self.view.addSubview(PassNumber)

self.passNumber = PassNumber

//登录

self.confirmButton =UIButton(frame:CGRectMake(30,380,UIScreen.mainScreen().bounds.size.width-60,30))

self.confirmButton.setTitle("登录",
forState: UIControlState.Normal)

self.confirmButton.setTitleColor(UIColor.blackColor(),forState:UIControlState.Normal)

self.confirmButton.setTitleColor(UIColor.blueColor(),forState:UIControlState.Highlighted)

self.confirmButton.layer.cornerRadius
=

self.confirmButton.backgroundColor =UIColor(colorLiteralRed:1,
green: 1, blue:1,alpha:0.5)

self.confirmButton.addTarget(self,
action: #selector(loginConfrim),

forControlEvents: .TouchUpInside)

self.view.addSubview(self.confirmButton)

}

func loginConfrim()

{

//收起键盘

self.view.endEditing(true)

var apptoken:String =getappToken()

}

func  getappToken() ->String {

var path ="http://xxx.com/v1/app/token/request_token"

let params:NSMutableDictionary =NSMutableDictionary()

params["app_id"] = "56e6183b5610d746578a9cf4"

params["app_secret"] ="56e6183b2560ad79242a0ae4"

params["mobile_id"] ="dfgdfgsdfgsdfgsdfg"

var token:String? ="ss"

Alamofire.request(.POST, path, parameters: paramsas! [String:AnyObject],encoding:
.JSON)

.responseJSON { responsein

iflet JSON = response.result.value
{

var  datajosn:NSDictionary  = JSONas!NSDictionary

var data:NSDictionary = datajosn["data"] as! NSDictionary

token = data["token"]as!String

self.login(token!);

}

}

return  token!

}

func login(apptoken:String)

{

var params:NSMutableDictionary =NSMutableDictionary()

params["mobile_phone"] =self.phoneNumber.text

params["password"] =self.passNumber.text

var headparams:NSMutableDictionary =NSMutableDictionary()

headparams["X-Ylwl-App-Token"] =  apptoken

Alamofire.request(.POST,"http://xxxx.com/v1/app/users/login", parameters:
paramsas? [String:AnyObject] , encoding: .JSON,
headers: headparamsas! [String :String]).responseJSON
{ (responseObject)in

print(responseObject.result.value)

}

}

}

swift开发网络篇 - 用户登录POST JSON and header的更多相关文章

  1. swift开发网络篇—NSURLConnection基本使用

    iOS开发网络篇—NSURLConnection基本使用 一.NSURLConnection的常用类 (1)NSURL:请求地址 (2)NSURLRequest:封装一个请求,保存发给服务器的全部数据 ...

  2. swift开发网络篇 - 网络基础

    GET & POST GET GET的语义是获取指定URL的资源 将数据按照variable=value的形式,添加到action所指向的URL后面,并且两者使用"?"连接 ...

  3. swift开发网络篇—利用NSURLConnection GET请求和POST请求

    一.GET请求和POST请求简单说明 @IBOutlet weakvar userName:UITextField! @IBOutletweakvar userPwd:UITextField! @IB ...

  4. swift开发网络篇—利用NSURLSession 发送GET和POST请求

    说明:本文示例代码发送的请求均为http请求,需要对info.plist文件进行配置.如何配置,请参考https://github.com/HanGangAndHanMeimei/iOS9Adapta ...

  5. swift开发网络篇 - post 请求

    /** 所有网络请求,统一使用异步请求! 在今后的开发中,如果使用简单的get/head请求,可以用NSURLConnction异步方法 GET查/POST增/PUT改/DELETE删/HEAD GE ...

  6. iOS开发网络篇—JSON数据的解析

    iOS开发网络篇—JSON数据的解析 iOS开发网络篇—JSON介绍 一.什么是JSON JSON是一种轻量级的数据格式,一般用于数据交互 服务器返回给客户端的数据,一般都是JSON格式或者XML格式 ...

  7. iOS开发网络篇—发送json数据给服务器以及多值参数

    iOS开发网络篇—发送json数据给服务器以及多值参数 一.发送JSON数据给服务器 发送JSON数据给服务器的步骤: (1)一定要使用POST请求 (2)设置请求头 (3)设置JSON数据为请求体 ...

  8. iOS开发网络篇—HTTP协议

    iOS开发网络篇—HTTP协议 说明:apache tomcat服务器必须占用8080端口 一.URL 1.基本介绍 URL的全称是Uniform Resource Locator(统一资源定位符) ...

  9. iOS开发网络篇—NSURLConnection基本使用

    iOS开发网络篇—NSURLConnection基本使用 一.NSURLConnection的常用类 (1)NSURL:请求地址 (2)NSURLRequest:封装一个请求,保存发给服务器的全部数据 ...

随机推荐

  1. 通过PXE安装Linux实况

    通过PXE安装Linux实况 网卡引导操作系统的过程我们可以把它称为PXE(Pre-bootExecutionEnvironment),十几年前,在搞无盘NT时候,我们为了使网卡支持PXE引导要特意购 ...

  2. c# for 和 foreach

    1给定长度 不需要计算长度的 for比foreach循环效率高 2 在不确定长度 或者计算长度有性能损耗的时候 用foreach比较方便 2336 循环语句是编程的基本语句,在C#中除了沿用C语言的循 ...

  3. Codefroces Educational Round 26 837 B. Flag of Berland

    B. Flag of Berland time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  4. css3 transform:scale(x)实现字体的缩放:

    css3 transform:scale(x)字体的缩放: transform:scale(x),针对于整体的缩放,缩放的整体包括宽,高,背景.这自然对于内联元素就无法使用此属性,最好使用无属性的sp ...

  5. POJ 1269 Intersecting Lines 直线交

    不知道谁转的计算几何题集里面有这个题...标题还写的是基本线段求交... 结果题都没看就直接敲了个线段交...各种姿势WA一遍以后发现题意根本不是线段交而是直线交...白改了那个模板... 乱发文的同 ...

  6. 洛谷 P1757 通天之分组背包

    P1757 通天之分组背包 题目背景 直达通天路·小A历险记第二篇 题目描述 自01背包问世之后,小A对此深感兴趣.一天,小A去远游,却发现他的背包不同于01背包,他的物品大致可分为k组,每组中的物品 ...

  7. 智能指针shared_ptr, auto_ptr, scoped_ptr, weak_ptr总结

    看这里: http://blog.csdn.net/lollipop_jin/article/details/8499530 shared_ptr可以多线程同时读,但是涉及到写,需要加锁. share ...

  8. JavaScript入门:003—JS中的变量

    编程语言都是同样的,JS中也是有变量的.首先JS的变量是区分大写和小写的,这个须要注意.比方number和Number是不同的变量.无论是经常使用类型的,还是对象类型,比方 Object obj和Ob ...

  9. 7lession-基础数据使用介绍

    1.数值 这个使用比较简单 a = 1 b = 3.2 c = 12.5+4j d = 20L 2.字符串 代码 s = "hello world,i am comming" pr ...

  10. 引用 Windows Server 2003 FTP服务器配置详解

    引用 昆神之星 的 Windows Server 2003 FTP服务器配置详解 1.FTP文件传输协议,主要用于计算机之间文件传输,是互联网上仅次于www的第二大服务.本文主要演示如何在Window ...