小编bra*_*ler的帖子

处理连接到Web服务的本机应用程序的登录功能

经过广泛的研究,我无法找到我的问题的明确答案.首先,有人能告诉我处理连接到Web服务的本机iphone应用程序的"登录功能"的基本逻辑吗?例如,Facebook应用程序在启动后立即询问用户名和密码,从那里您可以在应用程序的所有后续视图中完全访问您的帐户.每次你发布的东西等,你都不必重新登录...有人可以向我解释这个过程吗?它是通过cookie还是会话完成的?Keychain参与了吗?

我现在有一个半工作的应用程序,但我几乎肯定我可以做得更好,更安全.这是我正在做的事情:

1)使用mysql设置具有用户数据库(用户名和密码列以及其他表等)的本地服务器.写了一个简单的Web服务,它接受POST数据并查询数据库以检查用户名是否存在......如果存在,那么密码是相同的.使用sha1散列.相应地回应真或假.

2)我的应用程序有一个初始登录屏幕,其中包含2个文本字段(1表示用户名,1表示密码)和一个调用登录方法的按钮.我的登录方法执行以下操作:

  • 使用字符串初始化*NSURL(我的网络服务的网址:@"http://webservice.com/login.php")
  • 使用该url初始化*ASIFormDataRequst
  • 使用文本字段中的密码和电子邮件文本设置发布值
  • 将委托设置为自己
  • 在请求中调用startAsycronous
  • 实现了requestFininshed方法,以从webservice中检索"true"或"false"echo-ed
  • 根据响应,前进到下一个视图,否则,发出警告告诉用户重试

所以,我的问题是:

1)发送密码是否安全?(通过ASIHTTPRequest和POST方法?)2)在随后的视图中,用户应该能够与他们的帐户进行交互(比如在Facebook上发布消息和状态以及图片)如何保持用户的登录状态以便每个人都可以用户与数据库交互的时间,我可以确保用户仍然登录并且它是同一个用户?例如,我能想到这样做的唯一方法是,如果我使用用户名和密码在用户设备上存储cookie,然后每次与Web服务/数据库的连续交互,它都会使用cookie值进行身份验证(用户名)和密码).

必须有更好的方法来做到这一点?也许会议或饼干?或者使用钥匙串?

感谢帮助人员,对不起这个长期问题感到抱歉!


security facebook login httprequest ios

22
推荐指数
1
解决办法
9970
查看次数

从命令行执行Python脚本是隐藏打印语句

我知道这一定是一个超级基本的问题,然而,我试图在整个过程中找到一个简单的答案而找不到答案.

所以我的问题是:如何从命令行执行python脚本,以便我可以看到print语句.

例如,假设我有文件test.py:

def hello():
    print "hello"
Run Code Online (Sandbox Code Playgroud)

如果我进入解释器,导入test.py,然后调用test.hello(),一切正常.但是,我希望能够跑

python test.py
Run Code Online (Sandbox Code Playgroud)

从命令行打印并向终端打印"hello".

我该怎么做呢?

谢谢!

更新:是的,对不起,我的脚本实际上更像这样:

def main():
    hello()

def hello():
    print "hello"
Run Code Online (Sandbox Code Playgroud)

我还需要调用main(),还是自动调用?

python printing terminal

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

facebook ×1

httprequest ×1

ios ×1

login ×1

printing ×1

python ×1

security ×1

terminal ×1