クライアント側をクリックして、ヘッダー情報が追加された別のサイトにリダイレクトしようとしています.onclickのクライアント側コードは次のとおりです。
function selectApp(appGUID, userId ,embedUrl)
{
if(embedUrl==="")
{
var success = setAppGUID(appGUID);
window.location.replace('AppDetail.aspx');
}
else
{
$.ajax({
type: "POST",
url: embedUrl,
contentType: "text/html",
beforeSend: function (xhr, settings) {
xhr.setRequestHeader("UserId", userId);
},
success: function (msg) {
//actually redirect to the site
window.location.replace(embedUrl);
}
});
}
}
サーバー側のコードembedUrl
は
protected void Page_Load(object sender, EventArgs e)
{
string isSet = (String)HttpContext.Current.Session["saveUserID"];
if (String.IsNullOrEmpty(isSet))
{
NameValueCollection headers = base.Request.Headers;
for (int i = 0; i < headers.Count; i++)
{
if (headers.GetKey(i).Equals("UserId"))
{
HttpContext.Current.Session["saveUserID"] = headers.Get(i);
}
}
}
else
{
TextBox1.Text = HttpContext.Current.Session["saveUserID"].ToString();
}
}
これは機能しているように見えますが、エレガントではありません。ヘッダーデータでリダイレクトする方法はありますか? (私がやっていることを)ヘッダー情報をセッション変数に保存せずに、2つの別々の部分でリダイレクトを行います。