.net - HttpWebRequest 不会在生产中发送 cookie
问题描述
我正在编写一个 Web 服务客户端,服务器将在身份验证后发出一个 cookie,当 cookie 未过期时,授予访问权限。
发出新请求时,我通过代码创建一个新的 HttpWebRequest 对象:
Dim Wreq As HttpWebRequest
Wreq = WebRequest.CreateHttp(URL)
Wreq.Method = "POST"
If _cookieContainer Is Nothing Then
Wreq.Headers.Add(_digestHelper.CreateAuthorizationString(_userName, _password, New Uri(URL), Wreq.Method))
_cookieContainer = New CookieContainer()
End If
Wreq.CookieContainer = _cookieContainer
_cookieContainer 是实例中的私有变量,用于跨 Web 请求共享 cookie。
调用 GetResponse 之前的最后一步是更新请求正文,方法是在 HttpWebRequest 对象的 GetRequestStream 返回的请求流上调用 Write 方法。
我想 CookieContainer 对象托管响应发送的 cookie,并将 CookieContainer 对象分配给新请求以重新发送 cookie。
这在我的开发和测试计算机上运行良好,但是当我部署到生产环境时,HttpWebRequest 不再发送 cookie,这可以由提琴手证明。
操作系统都是 Windows 10,.net 框架都是 4.8。这很奇怪。
任何人都知道这个问题是怎么来的?
解决方案
推荐阅读
- php - WooCommerce 下拉邮政编码/带有(空格)或(_)或(-)的邮政编码?
- android - 将布局的根视图与视图的右边缘或端边缘对齐
- python - Discord.py 使机器人不与 DM 频道交互
- django - 浏览器返回按钮后刷新 Django 向导表单
- android - 在 app.json 中为 Android 的 app.json 中的 CAMERA_ROLL 添加什么权限?
- python - 名称错误。,通过四阶龙格库塔算法求解耦合微分方程时
- javascript - 警告:类型模块中未定义属性命令:“discord.js”.Client
- node.js - Nodejs如何处理可能会在它们之间产生冲突的多个请求?
- c# - Mailchimp API 成功指示器
- javascript - 你如何在 React 中选择一个特定的项目/组件,然后在 onClick 数组中循环?