首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UnityWebRequest中缺少HTTP“日期”标题

UnityWebRequest中缺少HTTP“日期”标题
EN

Stack Overflow用户
提问于 2016-10-13 22:29:39
回答 1查看 1.5K关注 0票数 0

我正在使用Unity3d,并试图向一个需要日期请求头的API发送一个GET请求。

但是,UnityWebRequest不会自动发送它(我已经与https://requestb.in/检查过了),而且我也不能手动设置它,因为"date“是受保护的标题之一。

代码语言:javascript
复制
UnityWebRequest www = UnityWebRequest.Get (fullURL);

www.SetRequestHeader("Date", dateTimeString);

yield return www.Send();

我得到了以下错误:

ArgumentException:无法设置包含非法字符的请求头日期名称或不可用户覆盖的

如果我使用WWW类(这确实允许我手动设置“日期”头),我就能够成功地与UnityWebRequest通信,但我也试图对进行同样的操作,因为WWW很快就会被废弃。

我尝试使用System.Reflange的"InternalSetRequestHeader“(在https://forum.unity3d.com/threads/unitywebrequest-cookies.383530/#post-2621262中实现)如下:

代码语言:javascript
复制
System.Reflection.MethodInfo dynMethod = myReq.GetType ().GetMethod ("InternalSetRequestHeader", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);

dynMethod.Invoke (myReq, new object[]{"Date", dateTimeString });

但是,我得到了以下错误:

InvalidOperationException:无法覆盖系统指定的标头

那么,如何确保发送“日期”请求头呢?

有解决方案吗?还是必须使用来自不同库(如.NET的HttpWebRequest )的对象?

EN

回答 1

Stack Overflow用户

发布于 2016-10-14 01:52:54

使用UnityWebRequest,您不能在Date字段中设置自定义值,请检查文档

另外,请检查RFC 2616,第4.2节,特别是关于日期头的RFC 2616,第14.18条。另外,检查RFC 2616第3.3.1节

您确定您的dateTimeString格式正确吗?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40032082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档