C#自动登录使用桌面应用程序的网站
我有一个网站在PHP Laravel 5.2
。C#自动登录使用桌面应用程序的网站
我想使用C#
创建一个桌面应用程序(类似于Windows的下拉框应用程序),其中将会有一个按钮“打开网页”,单击登录用户(在桌面应用程序中)应该得到的按钮登录到网站而不询问任何凭证。
在网站中,我使用的是基于api_token
的身份验证。
有一种可能的方式,我可以在网站上做一个终点来检查令牌,如果用户登录正确,但我认为它不太安全。
我已经检查了请求响应日志中的投递箱“打开dropbox.com”按钮,它没有在请求中设置任何令牌。
问题是我该如何实现它?
一种方式是做到以下几点:在您的桌面应用程序的服务器,这是指你想登录为
- 请求(随机数)唯一代码
打开一个网页浏览过程中与包含此使用一次性代码的地址,这样的事情:
http://www.your.server.com/the/page/you/want?auth=29874298798724982734
方式的Dropbox这样做,是在磁盘上创建其中包含一些JavaScript代码,他们的服务器上的职位“形”到一个安全的网页
https://www.dropbox.com/desktop_login
form fields:
buildno=Dropbox-win-7.4.30
u=home
c=en_US
i=<some number>
n data-nonce-c=<some large hex string>
然后生成一个网页浏览器进程打开一个临时的HTML文件这个文件。
要查看该文件,使用全球链接在你的Dropbox应用,然后尽快按Esc键作为初始网页加载和抢URL看起来应该是这样的:
file://C:/users/USERNAME/appdata/local/temp/RANDOM.html
然后打开此文件检查它。
我认为使用您现在建议的第一种方法会更好。非常感谢。 :) – Dev
尝试使webrequste(POST)到您的PHP脚本返回一个json – Radinator