【问题标题】:Get response from php page从 php 页面获取响应
【发布时间】:2012-11-18 11:04:09
【问题描述】:

我需要从我的 aspx.cs 页面调用 .php 页面。但我不想加载该页面。我只想调用该页面,该页面会给我 XLM 响应,我需要将其存储在 DB 中.我正在尝试使用 Ajax,但根据 this 链接。我们无法从 ajax 调用跨域页面。

简而言之,我想使用 asp.net 代码从 php 页面读取数据。

谁能帮帮我。

更新 :: P3P 策略在跨域页面调用的情况下是否有用。

【问题讨论】:

标签: c# php asp.net asp.net-3.5 p3p


【解决方案1】:

如果我理解正确,您的问题是您想要进行跨域 ajax 调用 - 这是不可能的。解决这个问题的方法是调用您自己的后端,然后从其他站点获取数据并将其发送回浏览器。请记住在后端进行任何必要的安全检查 - 取决于您对其他域的信任程度......(但即使您 100% 信任它,它也可能被黑客入侵或有一些其他问题导致它返回一些东西除了你认为它返回的东西)

【讨论】:

  • 我只想从后面的代码中调用这个页面并读取 php 页面,因为这个 php 页面返回给我 XML 数据。就像 Response.Redirect("test.php") 我需要一些方法调用和读取数据。
  • 好吧,对不起,那我误会你了。我从来没有接触过 c# / asp.net,所以我无法提供更具体的帮助。
  • @gofor.net 你是从代码隐藏还是从 Javascript 调用它?如果是代码隐藏,那么您无需担心任何跨域问题。
  • 是的,这就是我要找的,但是 WebClient 类会解决我的问题吗?
【解决方案2】:

我得到了解决方案,谢谢你的帮助。

创建一个新的 WebClient 对象

WebClient client = new WebClient();

string url = "http://testurl.com/test.php";

创建一个字节数组来保存返回的数据

byte[] html = client.DownloadData(url);

使用 UTF8Encoding 对象转换字节 数组转换成字符串

UTF8Encoding utf = new UTF8Encoding();

获取转换后的字符串

string mystring = utf.GetString(html);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-05
    • 1970-01-01
    • 1970-01-01
    • 2021-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-23
    相关资源
    最近更新 更多