$url = "http://example.com/............."
$ url有超过4095个字符。
我需要在php中访问此URL,但如果我使用file
或file_get_contents
,则会返回错误
如何在php中打开或访问此URL?
答案 0 :(得分:4)
你的问题不是PHP,这是你的要求的疯狂。 :)另外;
What is the maximum length of a URL in different browsers?
当然你想要POST而不是疯狂的GET。这听起来更像是系统设计的基本问题。
答案 1 :(得分:1)
这取决于您尝试访问的服务器类型。
例如:
Apache:通过LimitRequest *限制URL长度,默认情况下,URL字符串的长度为8 KB。
Microsoft Internet Information Server:默认情况下,它有16 KB。但它可以改变。
Perl HTTP :: Daemon:URL长度为8,000个字符,HTTP-header为16 KB。可以在Daemon.pm中更改值。
答案 2 :(得分:1)
您收到的错误是由远程服务器生成的...该服务无法处理超过所述字符数量的URL。
如果该API依赖于GET请求并且意图以您使用它的方式使用,那么您的问题就是使用过的API中的设计错误而与PHP无关。如果您无法更改API或提供API访问权限的服务,则无法解决此问题
答案 3 :(得分:0)
您应该使用POST
代替GET
来获取此类数据
答案 4 :(得分:0)
Raymond Chen曾写道,if you have to ask, you're probably doing something wrong。在你的情况下,你应该明显使用POST而不是GET。