用户可以选择输入保存到数据库的超链接,然后再渲染到Razor模板。但是,如果用户未指定http://
,则链接格式不正确;例如www.test.com
呈现为http://ourdomain.com/www.test.com
。
我们该如何处理?
答案 0 :(得分:3)
最好的办法是在将每个超链接保存到数据库中之前运行正则表达式。如果它没有http://
或https://
,那么我只需在前面添加http://
。所有https网站都会将http重定向到https,但大多数不支持https的网站都无法顺利将https重定向到http。
可能的正则表达式的一个例子是:
^(http|https)://
您要小心,只有在字符串验证开头处替换http://
或https://
,以防这些值在url参数中使用