将javascript post调用转换为Web API为C#代码 [英] convert javascript post call to web API into C# code

查看:53
本文介绍了将javascript post调用转换为Web API为C#代码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


任何人都可以帮我转换C#中的这个Js代码(比如HttpClient PostAsync之类的东西)?


让aircraftResult = await fetch(`$ {host} / api / v0 / rpc / resource.aircraft.get`, {

     ;   方法:" post",

        headers:{

           " authorization":`Bearer $ {token.access_token}`,

           " content-type":" application / json",

       },

     ;     body:JSON.stringify({

           ;  params:{}

       })

 &NBSP ;  });

   让aircrafts = await aircraftResult.json();



谢谢!

解决方案


试试这个:

 public async Task< T> HttpJsonRequestAsync< T>(字符串access_token,字符串主机)
{
var task = new Task< T>(()=>
{
using(var client = new WebClient ())
{

var values = new WebHeaderCollection();
values [" authorization"] =


" Bearer {access_token}";
values [" content-type"] =" application / json";
client.Headers = values;
var serializer = new JavaScriptSerializer();
using(var stream = client.OpenRead(


" {host} /api/v0/rpc/resource.aircraft.get"))
{
using(var reader = new StreamReader(stream))
return serializer.Deserialize< T>(reader.ReadToEnd());
}
}
});
task.Start();
返回等待任务;
}

问候,Chris






Hi,

Can anybody help me converting this Js code in C#(like a HttpClient PostAsync or something)?

let aircraftResult = await fetch(`${host}/api/v0/rpc/resource.aircraft.get`, {
        method: "post",
        headers: {
            "authorization": `Bearer ${token.access_token}`,
            "content-type": "application/json",
        },
        body: JSON.stringify({
            params: {}
        })
    });
    let aircrafts = await aircraftResult.json();

Thank you!

解决方案

Hi,

try this:

        public async Task<T> HttpJsonRequestAsync<T>(string access_token, string host)
        {
            var task = new Task<T>(() =>
            {
                using (var client = new WebClient())
                {

                    var values = new WebHeaderCollection();
                    values["authorization"] =


"Bearer {access_token}"; values["content-type"] = "application/json"; client.Headers = values; var serializer = new JavaScriptSerializer(); using (var stream = client.OpenRead(


"{host}/api/v0/rpc/resource.aircraft.get")) { using (var reader = new StreamReader(stream)) return serializer.Deserialize<T>(reader.ReadToEnd()); } } }); task.Start(); return await task; }

Greetings, Chris




这篇关于将javascript post调用转换为Web API为C#代码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆