Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.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# 无法在Unity中使用UnityWebRequest发布数据,它给出错误:HTTP/1.1 500内部服务器错误_C#_Asp.net_Unity3d_Iis_Unitywebrequest - Fatal编程技术网

C# 无法在Unity中使用UnityWebRequest发布数据,它给出错误:HTTP/1.1 500内部服务器错误

C# 无法在Unity中使用UnityWebRequest发布数据,它给出错误:HTTP/1.1 500内部服务器错误,c#,asp.net,unity3d,iis,unitywebrequest,C#,Asp.net,Unity3d,Iis,Unitywebrequest,我无法在Unity中使用UnityWebRequest以Json格式发布数据。这是错误的 错误:HTTP/1.1500内部服务器错误 我正在使用ASP.NET核心中制作的Web服务,并在IIS Express上本地托管 这是我的统一C#代码 公共类AddUsers:monobhavior { IEnumerator addOrUpdateUser() { 用户=新用户() { Id=“0001”, Name=“John”, } UnityWebRequest请求=UnityWebRequest.

我无法在Unity中使用UnityWebRequest以Json格式发布数据。这是错误的

错误:HTTP/1.1500内部服务器错误

我正在使用ASP.NET核心中制作的Web服务,并在IIS Express上本地托管

这是我的统一C#代码

公共类AddUsers:monobhavior
{
IEnumerator addOrUpdateUser()
{
用户=新用户()
{
Id=“0001”,
Name=“John”,
}
UnityWebRequest请求=UnityWebRequest.Post(“http://localhost:58755/User/AddNewUser,JsonConvert.SerializeObject(用户));
SetRequestHeader(“内容类型”、“应用程序/json”);
req.certificateHandler=新证书();
产生返回请求SendWebRequest();
if(req.isNetworkError | | req.ISHTTPEROR | | req.isError)
打印(“错误:+req.Error”);
打印(请求downloadHandler.text);
}
}
[可序列化]
公共类用户详细信息
{
公共字符串Id{get;set;}
公共字符串名称{get;set;}
}
这是我使用实体框架核心的ASP.NET核心代码

[HttpPost]
字符串AddNewUser([FromBody]用户)
{
Context.LogoQuizUsers.Add(user);//我在这里得到System.NullReferenceException
SaveChanges();
返回“Inserted Id:”+user.Id;
}

将数据作为原始正文发布,就像使用邮递员或任何类似界面发送一样。 将请求的
UploadHandler
设置为
UploadHandlerRaw
。添加并更改您的声明

UnityWebRequest请求=UnityWebRequest.Post(“http://localhost:58755/User/AddNewUser“,”职位“);
req.uploadHandler=新的UploadHandlerRaw(将.UTF8.GetBytes(JsonConvert.SerializeObject(用户))编码为uploadHandler;
因此,最终代码将是

IEnumerator addOrUpdateUser()
{
//...
UnityWebRequest请求=UnityWebRequest.Post(“http://localhost:58755/User/AddNewUser“,”职位“);
SetRequestHeader(“内容类型”、“应用程序/json”);
req.uploadHandler=新的UploadHandlerRaw(将.UTF8.GetBytes(JsonConvert.SerializeObject(用户))编码为uploadHandler;
req.certificateHandler=新证书();
产生返回请求SendWebRequest();
if(req.isNetworkError | | req.ISHTTPEROR | | req.isError)
打印(“错误:+req.Error”);
打印(请求downloadHandler.text);
//...
}
代码的其余部分是正确的