Hai*_*yan 3 javascript asp.net asp.net-session
我在GoogleOauth2.js文件中有简单的代码
function storedAccsessToken(token) {
$.ajax({
type: "GET",
url: '<%=HttpContext.Current.Request.ApplicationPath %>/SaveToken.ashx?accToken=' + token,
dataType: "text",
complete: function (resp, status) {
if (status == "success" || status == "notmodified") {
if (resp.responseText != '');
alert(resp.responseText);
window.location = window.location;
}
}
});
}
Run Code Online (Sandbox Code Playgroud)
和
function refresh() {
var akkToken = '<%=Session["googleAccToken"]%>';
$.ajax({
url: 'https://www.googleapis.com/oauth2/v1/userinfo?access_token=' + akkToken,
data: null,
success: function (resp) {
user = resp;
alert(user.name);
},
dataType: "jsonp"
});
}
Run Code Online (Sandbox Code Playgroud)
当我把js文件放在teg头
<head runat="server">
<title></title>
<script type="text/javascript" src="Scripts/jquery-1.8.2.min.js"></script>
<script src="Scripts/GoogleOauth2.js" type="text/javascript"></script>
</head>
Run Code Online (Sandbox Code Playgroud)
当我开始我的项目并调试js时,我看到<%= Session ["googleAccToken"]%> compilator将其理解为文本,但是当我将js代码放在head标签之间简单<script type="text/javascript"></script>它工作正常并且我在会话中得到我的价值想知道我可以将此代码保存在单独的文件中,并且它工作正常
您的错误是您已将<%= %>javascript .js文件包含在内部,并且它们不会编译以提供您期望的结果 - 它们保持原样.
有两种可能的解决方案.以太包含javascript文件之前的变量,以太完全将其移动到页面以便<%= %>可以编译.例如,你可以这样做:
<head runat="server">
<script type="text/javascript" src="Scripts/jquery-1.8.2.min.js"></script>
<script>
var akkToken = '<%=Session["googleAccToken"]%>';
var UrlTo = '<%=HttpContext.Current.Request.ApplicationPath %>SaveToken.ashx?accToken=';
</script>
<script src="Scripts/GoogleOauth2.js" type="text/javascript"></script>
</head>
Run Code Online (Sandbox Code Playgroud)
并akkToken从GoogleOauth2.js文件中删除,并放在url:UrlTo + token另一行也有<%= %>
| 归档时间: |
|
| 查看次数: |
9293 次 |
| 最近记录: |