iphone – iOS:如何使安全的HTTPS连接传递凭据?

iphone – iOS:如何使安全的HTTPS连接传递凭据?,第1张

概述我正在创建我的第一个iPad应用程序。我有一个Web应用程序,我想通过RESTful方式对数据进行身份验证。 如果您在浏览器中打开URL(https://myapp.com/auth/login),您将收到一个表单输入用户名和密码。我想我可以在请求的帖子数据中设置登录凭据并提交数据。 该网站使用HTTPS进行登录,以便凭证不会通过互联网以纯文本形式传递。 如何使安全的HTTPS连接传递凭据?这会记 我正在创建我的第一个iPad应用程序。我有一个Web应用程序,我想通过RESTful方式对数据进行身份验证。

如果您在浏览器中打开URL(https://myapp.com/auth/login),您将收到一个表单输入用户名和密码。我想我可以在请求的帖子数据中设置登录凭据并提交数据。

该网站使用httpS进行登录,以便凭证不会通过互联网以纯文本形式传递。

如何使安全的httpS连接传递凭据?这会记得我登录了以后的要求吗?这样做最好的方法是什么?

解决方法 进一步更新,2013年10月

虽然在写这个答案的时候,ASIhttpRequest得到了广泛的支持,但事实并非如此。不建议使用新项目,而是直接使用NSURLConnection,或者使用AFNetworking。

使用AFNetworking,有一个[httpClIEnt setAuthorizationheaderWithUsername:username password:password]; http身份验证的方法,并且创建POST样式表单同样容易 – 请参阅AFNetworking Post Request。

原来的答案:

很多人使用ASIhttpRequest类来处理http& https在iPhone / iPad上,因为它具有很多有用的功能,使用内置的类实现是困难或耗时的:

http://allseeing-i.com/ASIHTTPRequest/

从最简单的层面开始,您可以从以下开始:

NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];  ASIhttpRequest *request = [ASIhttpRequest requestWithURL:url];  [request startSynchronous];  NSError *error = [request error];  if (!error) {      Nsstring *response = [request responseString];      NSLog(@"response = %@",response);  }

如果您使用http身份验证,ASIhttpRequest将自动提示用户输入用户名和密码。

如果您使用某种其他形式的身份验证,您可能需要自己从用户那里请求用户名和密码,并将其作为POST值或自定义的http标头提交,然后响应可能包含JsON中的令牌或XML响应,或者可以设置一个cookie。

如果您添加关于认证方案如何工作的更多细节,我可以更具体一些。

更新

根据更新,要模拟POST表单,您只需要添加以下行:

[request addPostValue:usernameString forKey:@"username"];[request addPostValue:passwordString forKey:@"password"];

您还需要更改创建请求的方式,而不是:

ASIhttpRequest *request = [ASIhttpRequest requestWithURL:url];

做:

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];

(我也忘了在上面提到,我之前提到的代码是使用同步请求,所以你想用异步方式替换它,以避免在验证它的工作时阻止UI。)

这里有一个用于iphone的JsON框架:

http://code.google.com/p/json-framework/

这对我来说很好,并且易于与ASIhttpRequest一起使用。

总结

以上是内存溢出为你收集整理的iphone – iOS:如何使安全的HTTPS连接传递凭据?全部内容,希望文章能够帮你解决iphone – iOS:如何使安全的HTTPS连接传递凭据?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1086589.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存