0

我对 ASP 不熟悉,但我需要直接链接到http://carfueldata.direct.gov.uk/网站上的一个页面,我假设它内置了 .aspx 扩展名。我的问题是,当用户第一次点击链接时,目标页面立即将他们重定向到主页,大概是因为需要某种用户会话(?),我不知道。对我的访问者来说不是一个好的用户体验。第二次点击链接时,它会愉快地显示。我的用户两次点击链接的机会很小。

是否有标准的 URL 参数或我可以附加的东西来告诉 ASP 平台生成用户会话而不是重定向。

要自己查看问题,请在新窗口中打开此链接,然后将其关闭,然后重复。第一次它将重定向到主页。第二次没有:http ://carfueldata.direct.gov.uk/search-new-or-used-cars.aspx?vid=30392

4

2 回答 2

1

看起来他们正在为此目的使用会话。据我所知,没有任何方法可以覆盖它。

但是您可以为此做一些工作。调用 jQuery ajax 函数到主页并在其完成事件上重定向。调用 ajax 函数时,cookie(即会话集)将设置在客户端的浏览器上,并在 ajax 调用后将用户重定向到页面。(不允许用户直接访问的页面)

<a href="#" onclick="LinkClick()">Click to go</a>

function LinkClick()
{
$.ajax({
        type: "get",
        url: "http://carfueldata.direct.gov.uk",
        dataType: 'jsonp',
        complete: function (msg) {
        window.location.href=" http://carfueldata.direct.gov.uk/search-new-or-used-cars.aspx?vid=30392";
        }
    });
 return false;
}
于 2013-11-13T09:39:02.667 回答
0

当您最初向网站提交请求时,您会收到 302 状态(已移动(暂时))和重定向到主页。这是因为您的请求中没有会话 ID cookie。来自服务器的重定向响应会为您创建会话 ID cookie,从那时起,该站点将接受后续请求。

不知道你用的是哪个客户端库,但是应该可以截取服务器发送的重定向请求,把重定向到首页的URL替换成你原来的请求URL。由于重定向响应包含会话 ID cookie,我们可以假设会话已经创建并且您的原始请求应该立即工作,而无需对主页进行冗余访问。

于 2013-11-13T09:35:34.827 回答