Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Net cookie在生产中有价值,但在本地主机上没有价值_C#_.net_Cookies - Fatal编程技术网

C# Net cookie在生产中有价值,但在本地主机上没有价值

C# Net cookie在生产中有价值,但在本地主机上没有价值,c#,.net,cookies,C#,.net,Cookies,我有一个cookie,其中包含一个tmp文件名,用于后端处理 try { var cookie = new HttpCookie("TargetExcelFile") { Name = "TargetExcelFile", Path = "/", Secure = true, Expires = DateTime.Now.AddDays(1d), Val

我有一个cookie,其中包含一个tmp文件名,用于后端处理

    try {
        var cookie = new HttpCookie("TargetExcelFile") {
            Name = "TargetExcelFile",
            Path = "/",
            Secure = true,
            Expires = DateTime.Now.AddDays(1d),
            Value = file
        };

        Response.Cookies.Add(cookie);
    } catch (Exception e) {
        throw new Exception("Create file cookie failed: " + e.Message);
    }
在生产环境中,它可以正常工作,但在本地主机上,浏览器中的值为空。我可以设置断点,并在Response.Cookies.Addcookie中查看cookie在这两种情况下都有一个值;线路

在本地主机上运行时,会创建cookie,但浏览器中没有值

我认为安全标志可能是localhost上的一个问题,因此我做了以下操作:

    try {
        var cookie = new HttpCookie("TargetExcelFile") {
            Name = "TargetExcelFile",
            Path = "/",
#if DEBUG
            Secure = false,
#else
            Secure = true,
#endif
            Expires = DateTime.Now.AddDays(1d),
            Value = file
        };

        Response.Cookies.Add(cookie);
    } catch (Exception e) {
        throw new Exception("Create file cookie failed: " + e.Message);
    }
。。。这没用


想法?

httpCookies节点上的域属性可能设置为特定域。删除用于开发的域名:

<httpCookies httpOnlyCookies="true" requireSSL="false" />
此设置位于system.web下的web.config文件中


查看中的更多信息。

谢谢David!工作得很有魅力。