【问题标题】:Passing data between web applications在 Web 应用程序之间传递数据
【发布时间】:2015-05-12 00:28:37
【问题描述】:

我有两个不同的 Web 应用程序,我想知道如何将数据从我的第一个 Web 应用程序发送到第二个 Web 应用程序,例如在第一个 Web 应用程序的文本框上写我的名字并将其显示在第二个 Web 应用程序的标签上应用。我看过一些带有response.redirect、会话变量、cookies、应用程序状态和server.transfer的代码,但它总是将数据发送到同一个项目中的另一个页面。我可以用那个吗?我正在使用带有 C# 的 ASP.Net。

好的..我做到了。它对我有用

网络应用 1

protected void buttonPassValue_Click(object sender, EventArgs e)
    {

        Response.Redirect("http://localhost:57401/WebForm1.aspx?Name=" +
            this.txtFirstName.Text + "&LastName=" +
            this.txtLastName.Text); }

网络应用2

 public void Page_Load(object sender, EventArgs e)
    {

        if (!IsPostBack)
        this.lblname.Text = Request.QueryString["Name"];
        this.lbllastname.Text = Request.QueryString["Lastname"]; }

【问题讨论】:

  • QueryString怎么样
  • 您是否有权更改要从第一个网站获取数据的第二个网站的代码?
  • 您可以从第一个网站获取值,例如点击链接按钮,然后通过生成这些查询字符串将它们传递给其他网站。在接收端,您可以编写代码从查询字符串中获取值
  • 好的,但是如何才能在第二个 Web 应用程序上获取我在第一个 Web 应用程序中写入的值?
  • 你能看看是否正确吗? @阿迪尔

标签: c# asp.net web-applications


【解决方案1】:

使用Get 方法在查询字符串中发送数据,然后在接收页面上从中提取值。

如果需要保护数据,请使用POST 方法。使用 WebClient 生成对 url 的请求。在接收页面,从POST变量中提取数据并显示在label上。

POST 方法示例:(请求)

using (var client = new WebClient())
{
    var values = new NameValueCollection();
    values["name"] = "Name";
    values["username"] = "username";
    var response = client.UploadValues("url of page", values);

    var responseString = Encoding.Default.GetString(response);
}

从 POST 读取数据:(在目标页面上)

NameValueCollection postData = Request.Form;
string name, username;
if (!string.IsNullOrEmpty(postData["name"]))
{
  name = postData["name"];
}
if (!string.IsNullOrEmpty(postData["username"]))
{
  username = postData["username"];
}

【讨论】:

  • 好的..我正在尝试,我是网络应用程序的新手
  • 我添加了示例代码以使用 POST 方法发送和接收数据。试试看,很简单。
【解决方案2】:

您可以尝试创建 Web 服务以在应用程序之间进行通信。

【讨论】:

    猜你喜欢
    • 2012-07-01
    • 1970-01-01
    • 2011-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多