我使用形式验证我的网站,该网站是写在ASP.Net,但我有一个PHP脚本,我需要运行。是否有可能在PHP中获得User.Identity.Name的值?检索ASP.Net的User.Identity.Name在PHP
谢谢。
我使用形式验证我的网站,该网站是写在ASP.Net,但我有一个PHP脚本,我需要运行。是否有可能在PHP中获得User.Identity.Name的值?检索ASP.Net的User.Identity.Name在PHP
谢谢。
是的,如果你使用POST把它传递到PHP页面或GET(查询字符串或表格),这意味着从ASP页第一次得到的值,然后将它发送到你的PHP页面。你也可以看看this question on Stack Overflow,它提供了一个不同的解决方案。
*编辑:可能的解决方案:
第二个可以为PHP有一点创造性的工作为好。
既然你提到的iframe装载PHP脚本,你想要做这样的事情:
<iframe src="myscript.php?username=<%= User.Identity.Name %>" />
这通过标识名一起作为一个GET参数,通过Boekwurm的建议。
然后,在你的PHP脚本,抓住它,就像这样:
username = $_GET["username"];
取决于你用它做什么,你可能需要在一些地方的安全,防止人们任意运行PHP脚本用户名参数。
传递变量,他们就可以通过更改用户名来欺骗系统。 – khalil 2009-08-31 04:17:42
是的,这就是为什么你需要一些安全性(正如我的文章所述)。例如,尝试在数据库中生成一个令牌,然后在PHP脚本中将该令牌进行匹配。 – JoshJordan 2009-08-31 04:46:12
真的,您应该在iframe中使用ASP.NET(aspx)页面,并使用POST请求对PHP脚本进行AJAX调用,从而掩盖了您传递用户名的事实,但是**仍然会需要一个安全令牌**或等效的。 – JoshJordan 2009-08-31 04:51:49
即时通讯不知道答案即时寻找。 php页面将在登录页面后加载到iframe中。 – khalil 2009-08-31 04:04:47
如果是这种情况,将其添加到您问题的文本中可能是一个好主意。要获得具体答案,您需要针对您的问题进行具体说明。 – 2009-08-31 04:46:11
更新了我的答案,并提供了一些可能有用的附加信息。 – 2009-08-31 04:52:55