从ASP.NET中的另一个源获取以字符串形式发布的数据

本文关键字:字符串 数据 获取 NET ASP 另一个 | 更新日期: 2023-09-27 18:12:24

我有一个URL,数据正通过另一家供应商的ERP软件发布在该URL上。。。。。我想从那个供应商那里收集页面加载事件中发布在我的URL上的数据。。。。在使用c#的ASP.NET中应该做些什么?他没有字段名,他正在自动生成数据字符串,然后自动将其发布到我的ASP.NET页面。

从ASP.NET中的另一个源获取以字符串形式发布的数据

首先,如果你知道你将收到什么样的数据,那么你应该添加:

Page.Response.ContentType = "text/xml"; //For XML Data

然后在流读取器中读取数据:

StreamReader sr = new StreamReader(Page.Request.InputStream);

streamreader中的数据是Url编码的。因此,在你进一步使用之前,你必须对其进行解码:

string main = Server.UrlDecode(sr.ReadToEnd());

仅此而已。我希望它能有所帮助。

var parameter = Request.QueryString["parameterName"];
if (parameter != null)
{
 //.. use it
}

请参阅HttpRequest.QueryString

我知道您说过Query没有字段名;这意味着您不能像普通的QueryString那样使用字符串索引器来查找它。如果是这样,那么您可能不得不在不知道查询键的情况下访问它。

假设你知道"数据"是第一个参数,你可以这样访问它:

string data = Request.QueryString.getKey(0);

如果这不起作用,你可以直接访问网址

string query = Request.Url.Query;

如果他们正在执行POST,则可以使用Request.Form。它将返回发布到Url的元素的NameValueCollection,如果您不知道发布内容的名称,则可以循环使用它。如果你知道这个名字,那么你可以做Request.Form["NamedItem"]

foreach(var key in Request)
{
    var data = Request[key];
}

将遍历Request.Querystringd、Request.Form和Request.Params.