ASP.NET MVC Javascript重定向编码问题
ASP.NET MVC Javascript Redirect encoding issue
我正试图使用Razor将URL注入Javascript变量,然后将浏览器重定向到该URL。我需要这样做,因为我的应用程序是完全基于AJAX的,并且我正在重定向到Facebook身份验证页面。
执行客户端重定向的视图如下所示:
@model Site.Core.ViewModels.Auth.FacebookCanvasLoginModel
<script type="text/javascript">
var redirectUrl = '@(Model.FacebookLoginUrl)';
window.top.location.href = redirectUrl;
</script>
Model.FacebookLogin URL的值由MVC中的URL.Action()帮助程序生成。
问题是实际重定向到的位置是:
http://dev.mydomain.net/Auth/RequestPermission?permissions=read_stream%2Cuser_photos&redirectUrl=http%3A%2F%2Fdev.mydomain.net%2Fnewsfeed%3F_%3D1328276903643
其包含CCD_ 1而不是CCD_ 2
如何在不将&
编码为&
的情况下将此URL传递给window.location.htm,同时将重定向URL保持为编码的URL字符串?
您需要获取Raw值,这样它就不会对值进行html编码。
@Html.Raw(Model.FacebookLoginUrl)
你把它放在javascript中,你会想逃离任何可能会让javascript出错的东西。所以试试这个:
var redirectUrl = @Html.Raw(Json.Encode(Model.FacebookLoginUrl))
供您参考:Json类
相关文章:
- ajax表单提交的编码问题
- 导出为 CSV 时的编码问题
- 地理编码器 - IE8 中的编码问题
- 参数未正确传递给AJAX-编码问题
- AngularJS/Grunt编码问题
- Outlook中的HTML锚定邮件主题编码问题
- NetSuite Restlet PDF 文件编码问题
- 在安卓中使用 JavaScript 设置内容时出现编码问题
- Javascript到csv导出编码问题
- 为什么此字符编码问题仅在选定系统上出现
- JavaScript utf-8 编码问题
- JavaScript WebSocket 字符编码问题(文本)
- 文档.引荐来源网址编码问题
- jquery单词计数器的输入编码问题
- JSP、JQuery和Javascript的字符集编码问题
- 外部gem的资产管道编码问题(UTF-8与ASCII-8BIT)
- 集成Moment JS库时出现编码问题
- Expressjs:res.download期间图像文件编码问题
- php中日语字符的编码问题
- Strophe字符编码问题