U8 OpenApi调用

编程入门 行业动态 更新时间:2024-10-20 05:36:07

U8 <a href=https://www.elefans.com/category/jswz/34/1705318.html style=OpenApi调用"/>

U8 OpenApi调用

U8 OpenApi调用

调用OpenAPI的准备:
一.在用友开放平台(/)注册账号。

二.申请成为开发者。
注册的时候选择开发者!
三.下载OpenAPI客户端。

四.创建应用。
选择你需要调用的接口

五.申请测试账号。
申请的测试账号有效期为两个月

六.U8开放平台配置应用需要调用的接口。
用测试账号登录

七.配置OpenAPI客户端。

完成准备后就可以开始项目的搭建了。

入库按钮
///
/// 入库按钮
///
///

    private void simpleButton1_Click(object sender, EventArgs e){//string apiID = "0121503694";string url = "?";//fromAccount = this.fromaccountT.Text;//toAccount = this.toaccountT.Text;url += "from_account=" + fromAccount + "&to_account=" + toAccount + "&app_key=" + appKey+ "&token=" + this.memoEdit1.Text.Trim() + "&tradeid=" + this.memoEdit2.Text.Trim();string postStr = @"{""productin"":{""warehousecode"":""01"",""date"":""2018-08-07"",""receivecode"":""2"",""departmentcode"":""1"",""maker"":""demo"",""entry"":[{""inventorycode"":""2"",""quantity"":""2"",}]}}";string returnMes = HttpPost(url, postStr);//LogFile.WriteLog("物理内存占用:" + Process.GetCurrentProcess().WorkingSet64 / 1024.0 / 1024.0);JObject jo = JObject.Parse(returnMes);if (jo.Property("errcode") == null){string a = jo["url"].ToString();getPostResult(jo["url"].ToString());MessageBox.Show("入库成功");}else if (jo.Property("errcode").Value.ToString() != "0"){MessageBox.Show(jo["errmsg"].ToString());//this.depT.Text = returnMes;return;}}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39

Post请求
///
/// Post请求
///

    CookieContainer cookie = new CookieContainer();private string HttpPost(string Url, string postDataStr){ServicePointManager.ServerCertificateValidationCallback = new          System.Net.Security.RemoteCertificateValidationCallback(CheckValidationResult);byte[] data = Encoding.UTF8.GetBytes(postDataStr);Uri uRI = new Uri(Url);HttpWebRequest req = WebRequest.Create(uRI) as HttpWebRequest;req.Method = "POST";req.KeepAlive = true;req.ContentType = "application/json";req.ContentLength = data.Length;req.AllowAutoRedirect = true;Stream outStream = req.GetRequestStream();outStream.Write(data, 0, data.Length);outStream.Close();HttpWebResponse res = req.GetResponse() as HttpWebResponse;Stream inStream = res.GetResponseStream();StreamReader sr = new StreamReader(inStream, Encoding.UTF8);string htmlResult = sr.ReadToEnd();return htmlResult;}/// <summary>/// 取最好的post结果/// </summary>/// <param name="url"></param>private string getPostResult(string url){string returnMes = HttpGet(url);//this.depT.Text = returnMes;JObject jo = JObject.Parse(returnMes);//LogFile.WriteLog("物理内存占用:" + Process.GetCurrentProcess().WorkingSet64 / 1024.0 / 1024.0);if (jo.Property("errcode") == null){getPostResult(jo["url"].ToString());}else if (jo.Property("errcode").Value.ToString() != "0"){MessageBox.Show(jo["errmsg"].ToString());}return returnMes;}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42

Get请求
///
/// Get请求
///
///
///

    public string HttpGet(string Url){ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(CheckValidationResult);HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);request.Method = "GET";request.ContentType = "text/html;charset=UTF-8";ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(CheckValidationResult);HttpWebResponse response = (HttpWebResponse)request.GetResponse();Stream myResponseStream = response.GetResponseStream();StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));string retString = myStreamReader.ReadToEnd();myStreamReader.Close();myResponseStream.Close();return retString;}/// 验证服务器证书回调自动验证  /// </summary>/// <param name="sender"></param>/// <param name="certificate"></param>/// <param name="chain"></param>/// <param name="errors"></param>/// <returns></returns>public bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors){   // 总是接受    return true;}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

获取token
///
/// 获取token
///

    public void GetToken(){string url = "?";fromAccount = this.fromaccountT.Text;appKey = this.appkeyT.Text;appSecret = this.appsecretT.Text;url += "from_account=" + fromAccount + "&app_key=" + appKey + "&app_secret=" + appSecret;returnToken = HttpGet(url);this.tokenT.Text = returnToken;JObject jo = JObject.Parse(returnToken);if (jo.Property("token") != null){returnToken = jo["token"]["id"].ToString();this.memoEdit1.Text = returnToken;}else{MessageBox.Show(jo["errmsg"].ToString());}}#endregion
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

获取tradeId
///
///获取tradeid
///

    public void GetTradeId() {string url = "?";fromAccount = this.fromaccountT.Text;appKey = this.appkeyT.Text;appSecret = this.appsecretT.Text;url += "from_account=" + fromAccount + "&app_key=" + appKey + "&token=" + returnToken;string returnTradeID = HttpGet(url);this.tokenT.Text = returnTradeID;JObject jo = JObject.Parse(returnTradeID);if (jo.Property("trade") != null){tradeID = jo["trade"]["id"].ToString();this.memoEdit2.Text = tradeID;}else{MessageBox.Show(jo["errmsg"].ToString());}}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

更多推荐

U8 OpenApi调用

本文发布于:2024-02-27 05:16:31,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1705316.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:OpenApi

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!