用 django 写一个跳转到第三方网址的代码。提示如知乎的这种跳转? 有什么思路吗?

41 天前
 python30
https://link.zhihu.com/?target=https%3A//www.sxhm.com/online.html
如上

我现在写的都是直接跳转的。用 js 也可以
但是我想用 django 来实现
比如:www.xxx.com?fads=http://www.bbb.com
这里有一个提示页面。确定后再跳
这样的 django 代码有什么思路?
多谢各位
1721 次点击
所在节点    Python
6 条回复
ltaoo1o
41 天前
刚刚看了下知乎,点击的链接就是 https://link.zhihu.com/?target=https%3A//www.sxhm.com/online.html 这种格式了。
用 django 就是解析用户提交的内容,如果存在超链接,就替换成你自己的网站地址+原始超链接。
elevioux
41 天前
第一时间想到的是输出文章内容的时候正则匹配一下,替换成站内地址。优化一下就是用户提交的时候提取,保存一份副本。
DeWjjj
41 天前
django 里面不是有自定义路由匹配么?就给一个关键字例如?transfer 就做一个页面就行了。渲染后面的字符串进网页就行了,服务端渲染页面就行了。
python30
41 天前
def tiaozhuan(request, weburl):
return render(request, 'info/tiaozhuan.html', context ={'weburl':weburl})

path(r'tiaozhuan/<path:weburl>/', tiaozhuan, name='tiaozhuan'),

解决了,就用上面。虽然不是很完美,好像没法用 /?target=http://www.bbb.com 这样的,只能用:/target/http://www.bbb.com, django 的路由里不用写?=等?
我在路由里用:path(r'tiaozhuan/?target=<path:weburl>', tiaozhuan, name='tiaozhuan'), 就不行,只有去掉:?target= 才可以,
sduoduo233
41 天前
ltaoo1o
41 天前
@python30 你的问题其实是,如何在请求路径匹配 /?target 时,渲染指定 tiaozhuan.html ?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1092553

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX