以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]api接口问题,不知道如何变通  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=169893)

--  作者:yjm789000
--  发布时间:2021/7/5 22:17:00
--  [求助]api接口问题,不知道如何变通
看对方的api接口案例后,我不知道具体要怎么对接到foxtable上来使用,这是对方的实例接口:php的
  1. <?php
  2. $host = "http://apis.5118.com";
  3. $path = "/wyc/akey";
  4. $method = "POST";
  5. $apikey = "你要调用API的apikey";
  6. $headers = array();
  7. array_push($headers, "Authorization:" . $apikey);
  8. //根据API的要求,定义相对应的Content-Type
  9. array_push($headers, "Content-Type".":"."application/x-www-form-urlencoded; charset=UTF-8");
  10. $querys = "";
  11. $bodys = "txt=txt&th=th&filter=filter&corewordfilter=corewordfilter";
  12. $url = $host . $path;
  13. $curl = curl_init();
  14. curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method);
  15. curl_setopt($curl, CURLOPT_URL, $url);
  16. curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
  17. curl_setopt($curl, CURLOPT_FAILONERROR, false);
  18. curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
  19. curl_setopt($curl, CURLOPT_HEADER, true);
  20. if (1 == strpos("$".$host, "https://"))
  21. {
  22. curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
  23. curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
  24. }
  25. curl_setopt($curl, CURLOPT_POSTFIELDS, $bodys);
  26. var_dump(curl_exec($curl));
  27. ?>


这是c#的
  1. using System.IO;
  2. using System.Text;
  3. using System.Net;
  4. using System.Net.Security;
  5. using System.Security.Cryptography.X509Certificates;
  6. private const String host = "http://apis.5118.com";
  7. private const String path = "/wyc/akey";
  8. private const String method = "POST";
  9. private const String apikey = "你要调用的接口apikey";
  10. static void Main(string[] args)
  11. {
  12. String querys = "";
  13. String bodys = "txt=txt&th=th&filter=filter&corewordfilter=corewordfilter";
  14. String url = host + path;
  15. HttpWebRequest httpRequest = null;
  16. HttpWebResponse httpResponse = null;
  17. if (0 < querys.Length)
  18. {
  19. url = url + "?" + querys;
  20. }
  21. if (host.Contains("https://"))
  22. {
  23. ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
  24. httpRequest = (HttpWebRequest)WebRequest.CreateDefault(new Uri(url));
  25. }
  26. else
  27. {
  28. httpRequest = (HttpWebRequest)WebRequest.Create(url);
  29. }
  30. httpRequest.Method = method;
  31. httpRequest.Headers.Add("Authorization", apikey);
  32. //根据API的要求,定义相对应的Content-Type
  33. httpRequest.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";
  34. if (0 < bodys.Length)
  35. {
  36. byte[] data = Encoding.UTF8.GetBytes(bodys);
  37. using (Stream stream = httpRequest.GetRequestStream())
  38. {
  39. stream.Write(data, 0, data.Length);
  40. }
  41. }
  42. try
  43. {
  44. httpResponse = (HttpWebResponse)httpRequest.GetResponse();
  45. }
  46. catch (WebException ex)
  47. {
  48. httpResponse = (HttpWebResponse)ex.Response;
  49. }
  50. Console.WriteLine(httpResponse.StatusCode);
  51. Console.WriteLine(httpResponse.Method);
  52. Console.WriteLine(httpResponse.Headers);
  53. Stream st = httpResponse.GetResponseStream();
  54. StreamReader reader = new StreamReader(st, Encoding.GetEncoding("utf-8"));
  55. Console.WriteLine(reader.ReadToEnd());
  56. Console.WriteLine("\\n");
  57. }
  58. public static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
  59. {
  60. return true;
  61. }


老师,怎么把对方的api接口案例,写成我们这种阿里云的案例:

Dim hc As New HttpClient("http://ali-deliver.showapi.com/fetchCom?nu=929601675231")
hc
.Headers.Add("Authorization","APPCODE " & "7858a126750949e4a36371580f420413")
Dim
 jo As JObject = Jobject.Parse(hc.GetData)
Output
.Show(jo.ToString)


希望老师帮忙指导写一下给我,谢谢!

--  作者:有点蓝
--  发布时间:2021/7/5 22:25:00
--  
Dim hc As New HttpClient("http://apis.5118.com/wyc/akey")
hc.Headers.Add("Authorization","你要调用的接口apikey")
hc.ContentType = "application/x-www-form-urlencoded"
hc.FormData.Add("txt","txt")
hc.FormData.Add("th","th")
hc.FormData.Add("filter","filter")
……其它参数
dim ret as string = hc.GetData
msgbox(ret)

--  作者:yjm789000
--  发布时间:2021/7/6 9:33:00
--  回复:(yjm789000)[求助]api接口问题,不知道如何变...
老师,我试了下,这种短文本没问题了,可以用的,谢谢。但是出现新问题了。就是有这种长文本,类似下面的——————,
那个txt, hc.FormData.Add("txt","txt"),里面的txt, 这种长文本我用"  "没办法变成字符串内容了,放不进去,这种有点格式的
长字符串没办法引入里面使用,请老师指导一下
txt的内容案例如下:

学习,是指通过阅读听讲思考研究、实践等途径获得知识技能过程。学习分为狭义与广义两种:

狭义:通过阅读、听讲、研究、观察、理解探索实验、实践等手段获得知识或技能的过程,是一种使个体可以得到持续变化(知识和技能,方法与过程,情感与价值的改善和升华)的行为方式。例如:通过学校教育获得知识的过程。

广义:是人在生活过程中,通过获得经验而产生的行为或行为潜能的相对持久的方式。次广义学习指人类的学习。

  • 概要

人从出生到死亡学习从未间断,从哇哇学语开始慢慢通过学习,从而了解这个世界。

学习作为一种获取知识交流情感的方式,已经成为人们日常生活中不可缺少的一项重要的内容,尤其是在二十一世纪这个知识经济时代,自主学习已是人们不断满足自身需要、充实原有知识结构,获取有价值信息,并最终取得成功的法宝。

  • 扩展

有关于学习的名言警句:

学如逆水行舟,不进则退。--《增广贤文》

学而不思则罔,思而不学则殆 。--孔子论语

学习知识要善于思考,思考,再思考。--爱因斯坦

学而不用则废,用而不学则滞;学用必须结合,二者缺一不可。--周海中

我们一定要给自己提出这样的任务:第一,学习,第二是学习,第三还是学习。 --列宁

在寻求真理的长河中,唯有学习,不断地学习,勤奋地学习,有创造性地学习,才能越重山跨峻岭。--华罗庚

学习有如母亲一般慈爱,它用纯洁和温柔的欢乐来哺育孩子,如果向它要求额外的报酬,也许就是罪过。 --巴尔扎克

我们全都要从前辈和同辈学习到一些东西。就连最大的天才,如果想单凭他所特有的内在自我去对付一切,他也决不会有多大成就。--歌德

我怕的并不是那艰苦严峻的生活,而是不能再学习和认识我迫切想了解的世界。对我来说,不学习,毋宁死。--罗蒙诺索夫

儿童的心灵是敏感的,它是为着接受一切好的东西而敞开的。如果教师诱导儿童学习好榜样,鼓励仿效一切好的行为,那么,儿童身上的所有缺点就会没有痛苦和创伤地不觉得难受地逐渐消失。--苏霍姆林斯基





--  作者:有点蓝
--  发布时间:2021/7/6 9:35:00
--  
参考:http://www.foxtable.com/webhelp/topics/2489.htm
--  作者:有点蓝
--  发布时间:2021/7/6 9:36:00
--  
或者把内容放到记事本里,通过读取的方式取数据:http://www.foxtable.com/webhelp/topics/0344.htm