0
cocos2dxから.pngファイルをPHPサーバにアップロードする必要があります。私はここで説明するようにエンジンを編集しcocos2dxのpngファイルをPHPサーバにアップロードするには
(.TXTはテスト目的で結構です):ここ
http://discuss.cocos2d-x.org/t/upload-file-with-httpclient-solved/18028/4 と: https://github.com/FenneX/FenneX/commit/134e9433c1dbc3ca6f772ce4c149bf911275a7e9
だから今何?ファイルをサーバーにアップロードするにはどうすればよいですか?
これは私の試みですが、私はhttp/networkのnoobですので、私は何をしているのか分かりません。まずは簡単な作業例が必要です。
cocos2dxアップロードボタンソース:
// HTTP post
auto buttonPost = CustomButton::create("Post data",[this](Ref *pSender){
__String *dataToSend = __String::create("dataOne=45&dataTwo=100");
cocos2d::network::HttpRequest *request =
new cocos2d::network::HttpRequest();
request->setUrl("http://XXX.XXX.XXX.XXX/post.php");
request->setRequestType(cocos2d::network::HttpRequest::Type::POSTFILE);
request->setRequestData(dataToSend->getCString(), dataToSend->length());
request->setFilePath("res/test.txt");
request->setResponseCallback([=]
(network::HttpClient* client,
network::HttpResponse* response)
{
std::vector<char> *buffer = response->getResponseData();
printf("Get data from server");
for (unsigned int i = 0; i < buffer->size(); i++)
{
printf("%c", (*buffer)[i]);
}
printf("\n\n\n");
printf("Response Code %li ", response->getResponseCode());
if (200 == response->getResponseCode())
{
printf("OK \n");
}
else
{
printf("failed \n");
}
});
cocos2d::network::HttpClient::getInstance()->send(request);
request->release();
});
PHPサーバーサイドコード:
<?php
$uploaddir = "uploads/";
$uploadfile = $uploaddir . basename($_FILES['file']['name']);
if(move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile))
{
echo "The file has been uploaded successfully";
}
else
{
echo "There was an error uploading the file";
}
?>