1

我在一个项目中工作得很好,但是在第二个项目中我的 _POST 变量是空白的。想法?

IEnumerator GetClub()
     {
         Debug.Log("GetClub: - START");
         WWWForm form = new WWWForm();
         form.AddField("state", "TX");
         form.AddField("author", "MYNAME");
 
         UnityWebRequest res = UnityWebRequest.Post(getGlubsURL, form);
 
         yield return res.SendWebRequest();
 
         Debug.Log(res.downloadHandler.text);

而且php文件很简单

<?php
 echo "MADE IT  ";
 echo "author: [" . $_POST['author'] . "] ";
 echo "state: [" . $_POST['state'] . "]";
 ?>

统一的控制台是:

MADE IT 作者:[] state: [] UnityEngine.Debug:Log (object)

这在 POSTMAN 中运行良好,所以不确定为什么 Unity Forms 没有传递 POST 变量?

4

1 回答 1

0

我遇到过类似的问题;$_POST 通常为空。

然后我发现 URL 是"HTTP://website.com/folder",不是"HTTP://website.com/folder/"。最后一个"/" 显然很重要,因为没有它,您会收到一个"PAGE MOVED PERMANENTLY"错误,然后将您重定向到"HTTP://website.com/folder/index.php"丢弃以前的 POST 请求。

于 2021-04-03T08:32:02.530 回答