Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/95.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:从HTTPS网站获取内容_Php_Ssl_Https_File Get Contents - Fatal编程技术网

PHP:从HTTPS网站获取内容

PHP:从HTTPS网站获取内容,php,ssl,https,file-get-contents,Php,Ssl,Https,File Get Contents,我想做的是创建一个页面来显示我的账户余额。我有点厌倦了用用户名和密码登录我的银行账户,因为我有两个不同的密码(幸运的是)很长/扭曲的密码。所以我想对这个自我登录进行编码,然后显示余额。就这样。没有汇款,也没有付款。。只是平衡!但我觉得这要容易一点。。我的意思是,我知道这是一个银行网站,所以它必须是安全的,但如果我远程登录(比方说我能做到),给你我的凭据,你为什么不工作?为什么只在自己的服务器上工作?我知道ssl、https、verisign等,但你认为我有什么办法可以做到这一点吗?当然,对于第三

我想做的是创建一个页面来显示我的账户余额。我有点厌倦了用用户名和密码登录我的银行账户,因为我有两个不同的密码(幸运的是)很长/扭曲的密码。所以我想对这个自我登录进行编码,然后显示余额。就这样。没有汇款,也没有付款。。只是平衡!但我觉得这要容易一点。。我的意思是,我知道这是一个银行网站,所以它必须是安全的,但如果我远程登录(比方说我能做到),给你我的凭据,你为什么不工作?为什么只在自己的服务器上工作?我知道ssl、https、verisign等,但你认为我有什么办法可以做到这一点吗?当然,对于第三方开发人员没有API,我必须自己找到一种方法


我就是这么做的:我试着“远程”登录第一个银行账户(让我们打电话给bank.com银行网站)。因此,如果bank.com/login页面有一个带有用户名和密码的表单,那么我创建了一个看起来完全相同的localhost/login页面。事实上,操作也是一样的,所以登录后,我将被重定向到我的银行帐户(即bank.com/dashboard)。简单?不完全是。。有一个隐藏字段,一个标记,每x一次都会更改。因此,除了我已经做的,我应该能够添加到我的形式,这个领域以及。我应该从localhost模拟这个过程:转到银行网站,进入登录区域,浏览表单,找到隐藏字段(令牌)并记下它。然后将它添加到我的localhost表单中,并最终从那里登录。嗯,bank.com上的登录区域是https协议,所以我无法访问它的内容。我的计划彻底失败了。还是不?我尝试使用file\u get\u contents将bank.com/login内容刷新到localhost/login页面,但没有成功。它看起来是受保护的(verisign),因为页面已完全加载,但其部分内容不可用,因为它显示错误500:java.lang.NullPointerException。我想这是verisign握手的一部分,所以在这个过程之后内容就可以使用了。你知道吗?我应该放弃吗?:)

您基本上是在模拟XSRF攻击。如果一家银行允许这样做,我会感到非常惊讶。因为即使你不想转帐等等,它对所有基于网络的事情都使用相同的平台。这就是为什么浏览器和JavaScript在与银行之间传输信息(包括密码)时存在严格的法规遵从性问题的原因。我希望互联网安全,这是不可能的。如果你确实弄明白了,请告诉我你有哪家银行,这样如果我碰巧在那里存储了$$,我就可以更换银行。与其从另一个域的HTML页面启动登录过程,为什么不使用在桌面计算机上运行的高级HTTP API(如请求或Mechanize)编写一个脚本(用PHP、Python、Ruby等编写)?然后,您可以通过编程方式“单击”银行网站上的所有链接和按钮,以便在到达某个页面后获取余额。从银行服务器的角度来看,请求似乎来自浏览器,因此您不应该遇到任何跨域或身份验证问题。谢谢大家!这是一次尝试,基本的想法是尝试编写一个webapp,如果成功的话,还可以开发一个iOS应用。如果无法登录,移动应用程序如何工作?无论如何我可能会选择@Vortico解决方案,但我对请求和机械化一无所知。。你知道一些好的参考网站吗?非常感谢。以下是和的项目站点。我不是一个PHP开发人员,但在谷歌搜索之后,我发现,如果你是单语的话,这可能会更熟悉。