C# http请求 ( post方式 JSON格式 )

直接上代码

using System.Net;
using System.IO;

private void btnPost_Click(object sender, EventArgs e)
 {
            this.txtResult.AppendText(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "  准备请求" + "\r\n");

            //json参数
            string json = "{ " +
                         "\"query\": \"" + "要查询的问题内容" + "\" , " +
                         "\"top_k\": 1, " +
                         "\"score_threshold\": 0.9, " +
                         "\"history\": [], " +
                         "\"stream\": false, " +
                         "\"model_name\": \"xinghuo-api\", " +
                         "\"temperature\": 0.7, " +
                         "\"max_tokens\": 0, " +
                         "\"prompt_name\": \"default\" " +
                        " } ";
            
            //请求
            string strAnswer = postJson(this.txtUrl.Text, json);

            this.txtResult.AppendText(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "  返回值:" + strAnswer + "\r\n");
}       

http请求函数

private string postJson(string strUrl, string strJsonParam)
{
            try
            {
                string resultTxt="";
          //WebRequest httpWebRequest = HttpWebRequest.Create("http://localhost/CallCenter2/CallCenter2/Ajax_GridView_Select.php");
                WebRequest httpWebRequest = HttpWebRequest.Create(strUrl);

                httpWebRequest.ContentType = "application/json"; //;charset=UTF-8  ;charset=utf8
                httpWebRequest.Method = "POST";

                using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
                {
                    //string json = "{\"user\":\"李国林\"," +
                    //              "\"password\":\"AA1122233444\"}";
                    string json = strJsonParam;
                    streamWriter.Write(json);
                    streamWriter.Flush();
                    streamWriter.Close();
                }

                WebResponse httpResponse = httpWebRequest.GetResponse();
                using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                {
                    resultTxt = streamReader.ReadToEnd();
                }
                return resultTxt.ToString();
            }
            catch (Exception ex)
            {
                MessageBox.Show("出错!" + ex.Message);
                return "出错! " + ex.Message;
            }
}

 

posted @ 2024-02-22 14:27  海乐学习  阅读(1419)  评论(0编辑  收藏  举报