使用 c# 编写 cookie,使用 javascript 读取
Write cookie using c# and read using javascript
通常 Cookie 存储在以下位置:
C:''Users''SomeUser''AppData''Roaming''Microsoft''Windows''Cookies
我想做的是使用 c# 在此位置的文本文件中编写 cookie,这很简单,完全没有问题,这没关系。
但是我无法找到在我的 Web 应用程序中使用 java 脚本从该文件读取 cookie 的方法。
甚至可能吗?
JavaScript 没有从光盘读取文件的权限。您无法从本地文件发出跨域请求,因为它不在域中。您需要在本地 Web 服务器实例上托管 C:''index.html 才能使其正常工作。或者使用以下参数启动 Chrome。
--disable-web-security -–allow-file-access-from-files
还应将以下内容添加到服务响应中:
response.setHeader("Access-Control-Allow-Origin", "*");
这是可能的,但由于安全问题,它不会是直截了当的。
检查这个jQuery库:https://github.com/carhartl/jquery-cookie
注意:某些浏览器例如。Chrome,限制使用文件中的coockies:为什么Chrome忽略本地jQuery cookie?
我想你在寻找你在评论中提到的这个答案..
如果用户已经登录我的桌面应用程序,我希望用户自动登录,使用 cookie 我想将登录用户的一些信息传递给浏览器
.为此,您需要生成一个可用于存储在数据库中的一次性登录的令牌,并确保令牌在例如 8 小时内未使用时过期。启动网站时,将查询字符串上的令牌传递给网站。然后,网站使用该令牌将用户的会话连接到其帐户,并且令牌将被删除。
您也可以在 WIKI 上使用单点登录
经过多次挣扎和寻找,我找到了一种方法。我们可以使用wininet中的InternetSetCookie方法来.dll为特定的URL或Web应用程序设置cookie。
在类中添加以下代码:
[DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)]
private static extern bool InternetSetCookie(string url, string name, string data);
public static bool SetWinINETCookieString(string url, string name, string data)
{
return Form1.InternetSetCookie(url, name, data);
}
用法:
var cookieOutput = SetWinINETCookieString("http://localhost:49549/Home/Index", "dataToTest", "thisIsTheData;Expires = " + DateTime.Now.AddDays(10).ToString("R"));
出于测试目的,我硬编码了我的应用程序特定的 url。
然后在 Web 应用程序中,我编写了这个 JavaScript 来获取 cookie 值:
$(document).ready(function () {
alert(getCookie("dataToTest"));
});
这是getCookie函数:
function getCookie(name) {
var value = "; " + document.cookie;
var parts = value.split("; " + name + "=");
if (parts.length == 2) return parts.pop().split(";").shift();
}
这个SO帖子真的帮助了我。
- 正在添加'X'按钮,在文本字段旁边使用javascript
- 使用javascript将动态表从一个html页面打印到另一个html页
- 如何使用javascript或html下载PDF格式的填写表单
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- 如何使用javascript从主svg对象动态创建svg视图框
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 使用Javascript获取所选选项ID
- 如果文本字段为空,则使用JavaScript应用CSS样式
- 使用javascript从数据库中添加表
- JSON.parse没有'不能使用Javascript
- 使用javascript检查多个输入值,并在1次检查中标记多个输入框
- 可以't使用JavaScript获取width属性
- 如何使用javascript获取嵌套对象中所有子对象的单个属性
- 使用javascript在Flash中加载外部图像
- 使用Javascript创建测验页面
- 在PHP中使用javascript更改页面标题'if'
- 使用javascript函数在页面初始化后加载jquery
- 无法使用javascript检索SPList项
- 使用javascript存储变量的最安全方式
- 使用javascript搜索具有用户输入的数组