第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

通過 C# 客戶端使用 Nodejs Web 服務(wù)

通過 C# 客戶端使用 Nodejs Web 服務(wù)

C#
人到中年有點(diǎn)甜 2022-10-23 16:18:44
我有一個(gè) web 服務(wù),用 nodejs 編寫并開發(fā) ac# 客戶端。我對(duì) GET 方法沒有任何問題,但對(duì) POST 有問題。這是我的客戶代碼 HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.Method = methodType.ToString(); UTF8Encoding encoding = new UTF8Encoding(); if (!string.IsNullOrEmpty(content)) {    Byte[] byteArray = encoding.GetBytes(content);    request.ContentLength = byteArray.Length;    using (var dataStream = request.GetRequestStream())    {       dataStream.Write(byteArray, 0, byteArray.Length);    }  }   request.ContentType = "application/json";   try   {     using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())   {     using (var streamReader = new StreamReader(response.GetResponseStream()))      {         var  result = streamReader.ReadToEnd();      }        return response;    }     } .....這是我的服務(wù)器代碼router.post('/api/activation/activate', urlencodedParser, (req, res, next) => {    return new Promise(function (resolve, reject) {        (async function () {            try {                routerAppFeature.Delete(req.body.type.toUpperCase(), req.body.id);                console.log(req.body.HardwareId);                console.log(req.params.HardwareId)                console.log(req.query.HardwareId);                var result = { "data": "Okay :)" + req.body.HardwareId, "errorCode": "-1" };                res.json(result);            } catch (error) {                console.log('!!Error in activate method: ' + error);                return reject(error);            }        })();    }).catch(error => {        var err = { "message": error.message, "errorCode": "1" };        res.json(err);    });});所以我的問題是執(zhí)行using (var dataStream = request.GetRequestStream())后我的 post 方法被觸發(fā)并且 req.body 為空,因?yàn)樵谟|發(fā)該方法之前我沒有傳遞任何參數(shù)..我怎么解決這個(gè)問題?
查看完整描述

1 回答

?
拉莫斯之舞

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超10個(gè)贊

我已經(jīng)解決了這個(gè)問題..我仍然不知道真正的問題是什么,但下面的代碼正在工作..


public void Test(string content)

{

  using (var client = new HttpClient())

  {

     try

     {

        var res = client.PostAsync("http://localhost:4000/api/activation/activate",

            new StringContent(content, Encoding.UTF8, "application/json");


       res.Result.EnsureSuccessStatusCode();

       Console.WriteLine("Response " + res.Result.Content.ReadAsStringAsync().Result +

       Environment.NewLine);

     }

     catch (Exception e)

     {

       Console.WriteLine(e.ToString());

     }

   }

 }

所以它與nodejs無關(guān),而是c#方面。


查看完整回答
反對(duì) 回復(fù) 2022-10-23
  • 1 回答
  • 0 關(guān)注
  • 121 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)