C# Unity Web请求Post未发送数据

C# Unity Web请求Post未发送数据,c#,php,unity3d,C#,Php,Unity3d,统一2019.2.1f1 我已经研究了尽可能多的其他解决方案,但似乎没有一个能解决我的问题 当使用UnityWebRequest或WWW向php发送WWWForm时,表单数据永远不会被读取 下面是我使用UnityWebRequest得到的c代码: WWWForm formData = new WWWForm (); formData.AddField ("firstname", "firstname"); UnityWebRequ

统一2019.2.1f1

我已经研究了尽可能多的其他解决方案,但似乎没有一个能解决我的问题

当使用UnityWebRequest或WWW向php发送WWWForm时,表单数据永远不会被读取

下面是我使用UnityWebRequest得到的c代码:

    WWWForm formData = new WWWForm ();
    formData.AddField ("firstname", "firstname");

    UnityWebRequest www = UnityWebRequest.Post (URL, formData);
    //www.chunkedTransfer = false; //<- Tested with this on and off and no difference
    yield return www.SendWebRequest ();

    if (www.isNetworkError || www.isHttpError)
    {
        Debug.Log (www.error);
    }
    else
    {
        Debug.Log ("Form upload complete!");
        Debug.Log (www.downloadHandler.text);
    }
我从所有这些中得到的输出是:“HELLO!!!!”,而不是“HELLOfirstname!!!!”


我通过从HTML文件发送表单来测试PHP代码,效果很好。

我复制了您的代码,并执行了以下操作:

使用系统集合;
使用System.Collections.Generic;
使用UnityEngine;
使用UnityEngine。联网;
公共课pp:单一行为
{
bool runReuqest=true;
//在第一帧更新之前调用Start
void Start()
{
}
//每帧调用一次更新
无效更新()
{
if(runReuqest)
StartCustomer(“runRquest”);
}
IEnumerator runRquest(){
runReuqest=false;
//您的代码没有更改
wwform formData=新wwform();
formData.AddField(“firstname”、“firstname”);
UnityWebRequest www=UnityWebRequest.Post(“http://my-ip/j.php“,formData);

//www.chunkedTransfer=false;//在PHP上尝试
print\r($\u REQUEST);
。WWWForm是一个类。您需要代码从类中提取文本字符串并放到帖子中。@BrettGregson打印出一个空数组:“array{}”。能否在PHP端添加此字符串:var\u dump(file\u get\u contents(“php://input"));@myxaxa这是它返回的内容:string(0)““你好!!!!”!!!!
<?php
    $firstname = $_POST['firstname'];
    echo "HELLO".$firstname."!!!!";
?>
    WWWForm formData = new WWWForm ();
    formData.AddField ("firstname", "firstname");
    WWW www = new WWW("test.php",formData);
    yield return www;
    Debug.Log (www.text);
Log:
Form upload complete!
UnityEngine.Debug:Log(Object)

HELLOfirstname!!!!
UnityEngine.Debug:Log(Object)