〃忝書γě渎ぐ 发表于 2020-6-3 23:22:13

http新手问题

weibo.com/p/123456
weibo.com/p/123456?from=xxx.com
为什么两个地址,都会打开同一个网页,from后面加什么都可以?

赚小钱 发表于 2020-6-3 23:22:14

本帖最后由 赚小钱 于 2020-6-4 02:33 编辑

先了解一下 url 的组成,请参考 wiki
统一资源定位符
统一资源标志符

在一般情况下,或者说是标准情况下,访问的页面由 PATH(路径) 决定,query 部分表征该请求的参数。
以你的问题为例:
weibo.com/p/123456?from=xxx.com
浏览器(chrome)会尝试使用 https 访问,即
https://weibo.com/p/123456?from=xxx.com
可以得到 URL
scheme: https
host: weibo.com
port: 443
path: /p/123456
query: from=xxx.com

当然,用户能看到的实际是前端页面。即使相同的 path,后端依然有能力让前端看到不同的页面。完全看系统的实现。

form 本身都不是固定值,在 wiki 中有说明,被称作 query。
表现形式为:
key1=value1&key2=value2&key3=value3
在你的例子中,只有一个 key - value 对,key 为 form, value 为 xxx.com
事实上,可以把 form 改为任意值,= 后面也可以是任意字符串
比如替换成 query,param,name,balabala
看开发者心情命名。
但是,这个具体能改什么,需要通过分析 html 页面中的表单来确定。
毕竟,乱改一通,服务端程序大概率识别不了。

如果,是自己开发的程序,前后端保证一致,能互相识别就可以了。
页: [1]
查看完整版本: http新手问题