短网址,应该都是数据库存着原网址和短网址,对短网址提交 post,还要从数据库查询原网址是什么,但是这时候,已经无法将 post 的数据传过去了。。
1
qiayue 2017-10-15 15:58:20 +08:00 18
建议回小学先学习语文再来发帖
|
3
laoyur 2017-10-15 16:10:23 +08:00
如果没记错,302 的话,浏览器一定是走的 GET,那么本来的 POST 数据肯定丢了啊
主帖正文的确让人看不懂,跟数据库查询原网址有什么关系? |
6
xjp 2017-10-15 16:36:12 +08:00 via iPhone
我感觉这个得看各个短地址服务的实现方式了
|
7
qiayue 2017-10-15 16:58:43 +08:00 1
我也不怕被打脸,看得懂正文的请点赞 2 楼,看不懂的请点赞 1 楼
|
8
akira 2017-10-15 17:01:40 +08:00
如果短地址是你自己实现的话,不管是 get 还是 post,都有办法把参数传递下去。
如果是别人的,别人没实现这一块,当然数据就丢失了啊 |
9
chen2016 OP @akira 之所以有这个问题,是因为自己用 flask 写了个类似短网址的东西,但是 post 短网址数据无法传,估计实现起来也不怎么好实现
|
11
chen2016 OP @qiayue 我是来问问题的,表述不清晰的话,可以直接关掉主题,不必去说别人什么。所以你也不用无意义的来争
|
12
also24 2017-10-15 17:08:30 +08:00 5
|
14
qiayue 2017-10-15 17:30:08 +08:00
你 9 楼就说清楚了啊
你不说清楚,我们怎么回答问题,靠猜你想问什么,万一猜错了怎么办 |
15
em70 2017-10-15 17:36:37 +08:00
@chen2016 实现不难啊,短网址服务器查询到原网址后把接收到的所有参数原样 post 给原网址再给你显示返回值就行了,需求太小众,已有短网址服务肯定不支持,自己写一个吧
|
16
azh7138m 2017-10-15 17:41:40 +08:00 via Android
并不是很懂,为什么会有这个需求
|
19
Infernalzero 2017-10-15 17:48:57 +08:00
@chen2016 你自己写的就好搞了啊,重定向别用 301 或者 302,用 307 就行了,1 楼看不懂你说的估计是不了解浏览器对 post 请求的重定向行为
|
20
tomczhen 2017-10-15 18:02:08 +08:00 via Android
虽然可以用 307 重定向,但是否可以成功还是取决于 client 的实现,这个是不可控的。
|
21
whatsmyip 2017-10-15 18:02:37 +08:00
这个不错,下次改版可以考虑加进去了
|
22
Shura 2017-10-15 18:15:09 +08:00
转发数据就行了啊
|
23
azh7138m 2017-10-15 18:17:53 +08:00 via Android
@chen2016 post 都是程序狗写的吧,为啥这个地方要用短网址,我想不明白,能分享下场景吗?
|
24
qiayue 2017-10-15 18:27:11 +08:00
说实话,我直到 23 楼才完全领悟到楼主的问题在哪里了
如果是楼主自己实现的短网址程序的话,请在收到请求后,判断请求方式是否为 post 如果是 get,就直接重定向到原网址 如果是 post,就把 post 里边的数据获取后,由你 post 到原网址,得到返回的数据后,打印出来 |
25
only0jac 2017-10-15 18:27:25 +08:00 via Android 1
其实楼主的意思是 post 短网址能不能和 post 原网址有一样的效果,说白了,楼主底子太差,还不是一般的差,连基本的东西都不明白,能问出这种问题也是绝
还有,听起来楼主似乎是想干点不好的事情又不想让别人看见自己网址,对,我就是喷子,看谁都是坏人 |
28
akira 2017-10-15 23:10:41 +08:00
"如果是除了 GET 和 HEAD 之外的请求方法,客户端必须在重定向之前询问用户。"
按照这个规范的话,除非你能确保客户端是自己的,不然最好还是不要用 307 |