繁体   English   中英

有没有办法使用Javascript函数缩短URL

[英]Is there a way to shorten URL using Javascript function

我有一个Javascript函数,它调用window.location.href

下面是示例代码示例。

function xyz () {
    var URL = "https://www.web.com/getNode.jsp?param1=abc|def|ghi|.......";
    window.location.href = URL;
}

在这里, param1可以接受任意数量的值。 但是问题是如果“ URL” var的大小超过3000个字符,则会遇到类似

500内部服务器错误。

但是我的要求是无论param1多长时间,都将所有param1值传递给JSP。

有什么办法可以解决这个问题?

任何人都可以帮忙。

谢谢。

让我们总结一下事实:

  • 您需要发送长度不受限制的URL(引号:“无论param1有多长”和“我没有使用POST发送数据的选项”)
  • 您的服务器配置为拒绝超过3000个的URL。

唯一合乎逻辑的结论是:无论您如何尝试,它都不起作用。 除非您违反(或放松)规则。

您可能会想到的任何解决方案都是无法解决一般问题的解决方法,但可能“足够好”。 您是唯一知道什么在您的上下文中“足够好”的人。

解决方案示例:

  • 重新配置服务器以接受更长的URL
  • 将实际数据传递到Cookie中,然后仅将其一部分放入url中
  • 使用WebSocket连接或其他XHR调用在重定向之前发送数据

请注意,所有这些“解决方案”都需要作弊,因为您陈述的目标仍然是不可能的。

顺便说一句:网址缩短不是一个解决方案-它们没有神奇的作用,它们只是将人们从短网址重定向到长网址。 如果目标服务器拒绝较长的URL,它将仍然无法工作。

您可以尝试将方法从GET更改为POST并将所有params数据添加到正文中。 POST中的正文可以包含更多内容

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM