这个完整的 URL 是如何找到的?
How was this full URL found?
一位同事拿了这个 url: https://www.rbi.org.in/Scripts/BS_PressReleaseDisplay.aspx ,它有 month/year 分页 Javascript (见右边的元素)并且能够给我这个 url:
我可以用任何年份和月份替换 hdnYear 之后的年份和 hdnMonth 之后的月份,它会直接将我带到该页面。我问他是怎么做到的,他说 "I used the Network tab in Chrome dev tools." 这就是我能从他那里得到的全部信息。
有人知道这是怎么做到的吗?例如,我现在正在尝试通过在更改页面时查看“网络”选项卡来发现类似的方法来获取该站点每个页面的实际 url:http://www.ojk.go.id/id/regulasi/otoritas-jasa-keuangan/peraturan-dan-keputusan-dewan-komisioner/Default.aspx。我看不到任何与上述示例相似的内容。
他发送给您的 URL URL parameters/query-strings 由服务器读取,然后将选定的页面发送给您。
所以基本上服务器获取请求并读取这些参数,然后很可能将这些参数解析为某种方法,查询数据库然后为您返回结果。
如果您是链接网站的所有者,则可以实施此类解决方案,否则您会卡住,因为它需要在后端进行编码。
这就是您提到的 rbi.org.in
URL 的处理方式
- 打开
Chrome
并转到您提供的 URL
- 右击页面然后select
Inspect
- 单击
Network
选项卡。
- 单击网站上的 year/month 链接之一(您提到的分页)
- 在
Network
选项卡中,您会看到客户端(即浏览器)向服务器发出的 GET/POST
请求列表。
- 在
Filter
框中(在 Network
选项卡的 top-left 上),键入搜索过滤器 method:POST
。
- 单击
Name
列中的条目。这将打开有关 POST
请求的更多详细信息。向下滚动到标题为 Form Data
. 的部分
- 单击
Form Data
部分中的 view encoded
按钮
- 这些是您朋友在 URL 中包含的参数。您会注意到
hdnYear
和 hdnMonth
也列在那里。你朋友给的URL可以点击view source
获得
好吧,我真的不能告诉你如何在你想要的网站上准确地复制它,但我可以告诉你你的 co-worker 做了什么。
在页面https://www.rbi.org.in/Scripts/BS_PressReleaseDisplay.aspx中:
- 在开发工具中打开网络选项卡,如果有任何内容,请清除日志。
- 点击年月
- 在网络日志的 "Name" 栏中搜索 BS_PressReleaseDisplay.aspx 并点击它
- 在 Headers 选项卡中转到 "Form Data" 并单击 "view source"
就是这样,这是你的同事给你的 URL 参数,你可以尝试在你想要复制它的网站上执行此操作,点击另一个页面并搜索 Default.aspx,但是您必须弄清楚每个参数的含义,才能找到哪个是页码或您要查找的任何内容(在解析视图中检查它以便于阅读)。
截图:
http://prnt.sc/emsl2w
http://prnt.sc/emsm2z
希望对您有所帮助。
一位同事拿了这个 url: https://www.rbi.org.in/Scripts/BS_PressReleaseDisplay.aspx ,它有 month/year 分页 Javascript (见右边的元素)并且能够给我这个 url:
我可以用任何年份和月份替换 hdnYear 之后的年份和 hdnMonth 之后的月份,它会直接将我带到该页面。我问他是怎么做到的,他说 "I used the Network tab in Chrome dev tools." 这就是我能从他那里得到的全部信息。
有人知道这是怎么做到的吗?例如,我现在正在尝试通过在更改页面时查看“网络”选项卡来发现类似的方法来获取该站点每个页面的实际 url:http://www.ojk.go.id/id/regulasi/otoritas-jasa-keuangan/peraturan-dan-keputusan-dewan-komisioner/Default.aspx。我看不到任何与上述示例相似的内容。
他发送给您的 URL URL parameters/query-strings 由服务器读取,然后将选定的页面发送给您。
所以基本上服务器获取请求并读取这些参数,然后很可能将这些参数解析为某种方法,查询数据库然后为您返回结果。
如果您是链接网站的所有者,则可以实施此类解决方案,否则您会卡住,因为它需要在后端进行编码。
这就是您提到的 rbi.org.in
URL 的处理方式
- 打开
Chrome
并转到您提供的 URL - 右击页面然后select
Inspect
- 单击
Network
选项卡。 - 单击网站上的 year/month 链接之一(您提到的分页)
- 在
Network
选项卡中,您会看到客户端(即浏览器)向服务器发出的GET/POST
请求列表。 - 在
Filter
框中(在Network
选项卡的 top-left 上),键入搜索过滤器method:POST
。 - 单击
Name
列中的条目。这将打开有关POST
请求的更多详细信息。向下滚动到标题为Form Data
. 的部分
- 单击
Form Data
部分中的view encoded
按钮 - 这些是您朋友在 URL 中包含的参数。您会注意到
hdnYear
和hdnMonth
也列在那里。你朋友给的URL可以点击view source
获得
好吧,我真的不能告诉你如何在你想要的网站上准确地复制它,但我可以告诉你你的 co-worker 做了什么。
在页面https://www.rbi.org.in/Scripts/BS_PressReleaseDisplay.aspx中:
- 在开发工具中打开网络选项卡,如果有任何内容,请清除日志。
- 点击年月
- 在网络日志的 "Name" 栏中搜索 BS_PressReleaseDisplay.aspx 并点击它
- 在 Headers 选项卡中转到 "Form Data" 并单击 "view source"
就是这样,这是你的同事给你的 URL 参数,你可以尝试在你想要复制它的网站上执行此操作,点击另一个页面并搜索 Default.aspx,但是您必须弄清楚每个参数的含义,才能找到哪个是页码或您要查找的任何内容(在解析视图中检查它以便于阅读)。
截图: http://prnt.sc/emsl2w http://prnt.sc/emsm2z
希望对您有所帮助。