Как позвонить «asp.net загрузить файл api» с php

#php #asp.net-mvc #api

#php #asp.net-mvc #API

Вопрос:

Я создаю serive api с помощью asp.net и methoad POST загружает любой файл, и я хочу, используя код php, вызвать этот api, но я не знаю, как это сделать.

Код asp.net api загружает файл следующим образом:

 public Task<IEnumerable<string>> Post()
    {
        if (Request.Content.IsMimeMultipartContent())
        {
            string fullPath = HttpContext.Current.Server.MapPath("~/uploads");
            MyMultipartFormDataStreamProvider streamProvider = new MyMultipartFormDataStreamProvider(fullPath);
            var task = Request.Content.ReadAsMultipartAsync(streamProvider).ContinueWith(t =>
            {
                if (t.IsFaulted || t.IsCanceled)
                    throw new HttpResponseException(HttpStatusCode.InternalServerError);

                var fileInfo = streamProvider.FileData.Select(i =>
                {
                    var info = new FileInfo(i.LocalFileName);
                    return "File uploaded as "   info.FullName   " ("   info.Length   ")";
                });
                return fileInfo;

            });
            return task;
        }
        else
        {
            throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotAcceptable, "Invalid Request!"));
        }
    }
 

И класс:

 public class MyMultipartFormDataStreamProvider : MultipartFormDataStreamProvider
{
    public MyMultipartFormDataStreamProvider(string path)
        : base(path)
    {

    }

    public override string GetLocalFileName(System.Net.Http.Headers.HttpContentHeaders headers)
    {
        string fileName;
        if (!string.IsNullOrWhiteSpace(headers.ContentDisposition.FileName))
        {
            fileName = headers.ContentDisposition.FileName;
        }
        else
        {
            fileName = Guid.NewGuid().ToString()   ".data";
        }
        return fileName.Replace(""", string.Empty);
    }
}
 

Итак, как я могу вызвать этот API, используя код php?

Я ссылался на код, чтобы: http://www.codeguru.com/csharp/.net/uploading-files-asynchronously-using-asp.net-web-api.htm

Ответ №1:

Для меня это выглядит так, как будто у вас есть веб-сайт на php, и вы искали в Интернете пример загрузки и нашли asp.net один.

Если у вас запущен php, почему бы не использовать php для загрузки?