MFC 中怎么将图片上传到 http://169.254.1.10:8090/api/v1/~bali/ABC0123456789
时间: 2023-10-04 19:13:23 浏览: 86
要将图片上传到指定的 URL,可以使用 MFC 中的 CInternetSession、CHttpConnection、CHttpFile 等类。
以下是一个示例代码,可以将本地的图片文件上传到指定的 URL:
```cpp
CString url = _T("http://169.254.1.10:8090/api/v1/~bali/ABC0123456789");
CString filePath = _T("C:\\test.png");
CInternetSession session;
CHttpConnection* pConnection = session.GetHttpConnection(url);
CHttpFile* pFile = pConnection->OpenRequest(CHttpConnection::HTTP_VERB_POST, url);
// 设置请求头部
pFile->AddRequestHeaders(_T("Content-Type: application/octet-stream\r\n"));
pFile->AddRequestHeaders(_T("Connection: Keep-Alive\r\n"));
// 打开本地文件
CFile file(filePath, CFile::modeRead | CFile::shareDenyWrite);
DWORD fileSize = (DWORD)file.GetLength();
// 发送请求
pFile->SendRequestEx(fileSize);
pFile->Write(file.GetBuffer(fileSize), fileSize);
// 接收响应
pFile->EndRequest();
DWORD statusCode = 0;
pFile->QueryInfoStatusCode(statusCode);
// 清理资源
file.Close();
pFile->Close();
pConnection->Close();
session.Close();
```
需要注意的是,这段代码中的请求头部和请求体是针对上传二进制文件的情况设置的,如果上传的是其他类型的文件,需要根据实际情况修改请求头部和请求体的内容。同时,还需要确保上传的 URL、本地文件路径和请求头部等信息都是正确的。
阅读全文