如何向服务器发送C#格式的文件和字符串?

2024-09-28 21:58:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在将一个图像上载到服务器,但我想将它与一个字符串一起上载。我有这个代码,一直在为我工作的好。我不知道该把一行代码放在哪里,这样我才能做到

        FileInfo fi = new FileInfo(pathOfTheImage);
        string fileName = fi.Name;
        byte[] fileContents = File.ReadAllBytes(fi.FullName);

        Uri webService = new Uri(@"http://" + ipAddress+ ":" + port.ToString()+ "/cnn");
        HttpRequestMessage requestMessage = new HttpRequestMessage(HttpMethod.Post, webService);
        requestMessage.Headers.ExpectContinue = false;

        MultipartFormDataContent multiPartContent = new MultipartFormDataContent("----MyGreatBoundary");
        ByteArrayContent byteArrayContent = new ByteArrayContent(fileContents);
        byteArrayContent.Headers.Add("Content-Type", "multipart/form-data");
        multiPartContent.Add(byteArrayContent, "img", fileName);
        requestMessage.Content = multiPartContent;

        HttpClient httpClient = new HttpClient();
        Task<HttpResponseMessage> httpRequest = httpClient.SendAsync(requestMessage,
                                                                     HttpCompletionOption.ResponseContentRead,
                                                                     CancellationToken.None);
        HttpResponseMessage httpResponse = httpRequest.Result;
        outputOfTheCNN = await httpResponse.Content.ReadAsStringAsync();

        requestMessage.Dispose();
        multiPartContent.Dispose();
        byteArrayContent.Dispose();
        httpRequest.Dispose();
        httpResponse.Dispose();
        httpClient.Dispose();

客户端是用Python编写的

关于客户,我有这样的想法: file=request.files['img']

我只需要一样的东西,但是: device=request.files['device']


Tags: 代码newuricontentfilenamefihttpresponsehttpclient