Read Response.write on another page

I have a page www.senderdomain.com/sender.aspx from which I need to write a line on another page in another domain www.receiverdomain.com/receiver.aspx

In sender.aspx I wrote

Response.Write("Hello");
Response.Redirect(Request.UrlReferrer.ToString());

It redirects to the corresponding receiver.aspx page, but I'm not sure how to get the text "Hello" on the receiver.aspx page. Can any help help?

+3
source share
5 answers

It seems you have a value for Sender.aspx that needs to be displayed in the receiver.aspx file. So you can do it.

//On Page_Load of sender.aspx 

Session["fromSender"] = "Hello";
Respone.Redirect("receiver.aspx");
Response.End();

//On Page_Load of receiver.aspx 

if(!string.IsNullOrEmpty(Session["fromSender"].ToString()))
    Response.Write(Session["fromSender"].ToString());

EDIT

.

//On Page_Load of sender.aspx 

Response.Redirect("http://www.receiverdomain.com/receiver.aspx?fromSender=Hello");
Response.End();

//On Page_Load of receiver.aspx 

if(!string.IsNullOrEmpty(Request.QueryString["fromSender"].ToString()))
    Response.Write(Request.QueryString["fromSender"].ToString());

, , Session QueryString.

EDIT2

, [ "Hello"], , . , . .

//On Page_Load of receiver.aspx 
protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        //Remember to use System.Net namespace
        HttpWebRequest requestToSender = (HttpWebRequest)WebRequest.Create("http://www.senderdomain.com/sender.aspx?cmd=getvalue");
        HttpWebResponse responseFromSender = (HttpWebResponse)requestToSender.GetResponse();
        string fromSender = string.Empty;

        //Remember to use System.IO namespace
        using (StreamReader responseReader = new StreamReader(responseFromSender.GetResponseStream()))
        {
            fromSender = responseReader.ReadToEnd();
        }
        Response.Write(fromSender);
        Response.End();
    }
}

sender.aspx

//On Page_Load of sender.aspx 
protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        if (!string.IsNullOrEmpty(Request.QueryString["cmd"].ToString()))
        {
            string cmd = Request.QueryString["cmd"].ToString();
            if (cmd.Equals("getvalue", StringComparison.OrdinalIgnoreCase))
            {
                Response.Clear();
                Response.Write("Hello");
                Response.End();
            }
        }

        Response.Redirect("http://www.receiverdomain.com/receiver.aspx");
        Response.End();
    }
}
+1

,

   Response.Redirect(Request.UrlReferrer.ToString() + "?mytext=hello");

.

use private algorithm like 

 string message = "hello";
 add 1 to each char so that hello become ifmmp

and on receiver side -1 from each char so it will be hello 
+1

URL- .

SAML ( ). . Single Sign On, . ? ?

- , .

+1

Response.Redirect , , , - .

The only option to send data in a redirect (which works between different domains and different servers) is to put it in the URL itself. Example:

string message = "Hello";
Response.Redirect(Request.UrlReferrer.ToString() + "?msg=" + Server.UrlEncode(message));

Another option is to display a page containing a form that is automatically sent to the destination:

string message = "Hello";
Response.Write(
  "<html>" +
  "<head><title>Redirect</title></head>" +
  "<body onload=\"document.forms[0].submit();\">" +
  "<form action=\"" + Server.HtmlEncode(Request.UrlReferrer.ToString()) + "\" method=\"post\">" +
  "<input type=\"hidden\" name=\"msg\" value=\"" + Server.HtmlEncode(message) + "\">" +
  "</form>" +
  "</body>" +
  "</html>"
);
Response.End();

You can use Request.Form["msg"]the receive page to get the value.

0
source

Do not use the embedded URL if you want to avoid all problems later.

    String UrlEncode(String value)
    {
        StringBuilder result = new StringBuilder();

        foreach (char symbol in value)
        {
            if ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.~".IndexOf(symbol) != -1) result.Append(symbol);
            else result.Append("%u" + String.Format("{0:X4}", (int)symbol));
        }

        return result.ToString();
    }

The above supports unicode and almost everything.

0
source

Source: https://habr.com/ru/post/1749550/


All Articles