晚上在继续做IOS项目中的登陆验证部分的时候,发现一个非常奇怪的问题...去年是一边学Android一边做项目,今年现在又是一边学IOS一边做项目,很有挑战,乐在其中啊@%#&*
之前和后台的大哥沟通说让我用post方法,传递用户名和密码验证登陆,在网上找了会儿发现ASIHTTPRequest真是简单粗暴,于是看了官方文档和stackoverflow上的问答后就兴致勃勃地做起来了,但是不知道是后台的关系还是我的问题,post验证就是无法通过。然后今天下午那边给我邮件说就用get试试。
get目前是差不多搞定了,小mark一下。
一、get和post不同,get我试下来的情况是,无论用户名密码是否正确,都会进入到DidFinish,需要去抓取response读取内容判断是否验证成功;
二、异步和同步验证要注意;
三、一个奇怪得UITextField的问题。
我在用NSURLURLWithString:[NSStringstringWithFormat构造url的时候 username=%@&psw=%@, 用txtUser.text, txtPass.text去填充url发现这时候验证会无法通过,进入到DidFail中去。然后我查了下,发现text方法返回的确实是NSString *类型,但是如果先用NSString *user=txtUser.text来取得输入值,就能够正确验证。这点感到非常奇怪,希望路过的高手帮象牙塔中的小菜鸟解答下,身边没有大神求教,只能自己stackoverflow...
另,为方便万一有人正好需要使用ASIHTTPRequest的GET方法,贴一点自己的相关代码,方便大家参考。
ASIHTTPRequest *request = [ASIHTTPRequestrequestWithURL:url];
[requestsetDelegate:self];
[request startAsynchronous];
NSLog(@"ing");
[requestsetDidFailSelector:@selector(GetErr:)];
[requestsetDidFinishSelector:@selector(GetResult:)];