我尝试通过Curl(PHP)连接以下API:https://wiki.vg/Mojang_API#Example
我成功处理了其他CURL请求,只是PUT请求不起作用。
我正在使用XAMPP,但是我也在服务器上尝试了相同的结果。下面的Curl命令在本地和我的服务器上就像一个超级按钮一样工作:
curl -X PUT -H "Authorization: Bearer [authtoken]" -F model=alex -F file="@test.png;type=image/png" https://api.mojang.com/user/profile/32143e660e624cd8b05b889f0af49e39/skin -i
但是,如果我尝试将其转换为PHP,则会收到错误400或500。我整天浏览其他线程,没有任何结果。这是原始代码,没有我尝试过的所有其他测试:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
$post = array(
'model' => 'alex',
'file' => '\"@test.png;type=image/png\"'
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$headers = array(
$this->accessToken
);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$result = curl_exec($ch);
var_dump(curl_getinfo($ch, CURLINFO_HTTP_CODE));
curl_close($ch);
更多注意事项:
答案 0 :(得分:0)
确定的速度比我预期的要快。今天应该问更容易的。
我之前尝试过Curlfile,但是看起来我做错了事。
来自Barmer的评论有助于: https://www.php.net/manual/en/class.curlfile.php
谢谢^^