微软api接口(微软接口都有什么区别)

网友投稿 301 2023-02-04

本篇文章给大家谈谈微软api接口,以及微软接口都有什么区别对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享微软api接口的知识,其中也会对微软接口都有什么区别进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

api接口是什么意思?

是指同一计算机不同功能层之间的通信规则称为接口。
java接口作用:
1、利于代码的规范。这样做的目的一方面是为了给开发人员一个清晰的指示,告诉他们哪些业务需要实现;同时也能防止由于开发人员随意命名而导致的命名不清晰和代码混乱,影响开发效率。
2、有利于对代码进行维护。可以一开始定义一个接口,把功能菜单放在接口里,然后定义类时实现这个接口,以后要换的话只不过是引用另一个类而已,这样就达到维护、拓展的方便性。
3、保证代码的安全和严密。一个好的程序一定符合高内聚低耦合的特征,能够让系统的功能较好地实现,而不涉及任何具体的实现细节。这样就比较安全、严密一些,这一思想一般在软件开发中较为常见。

API是什么,有什么用

短信API(短信应用程序接口)其实是一组定义、程序及协议微软api接口的集合微软api接口,通过 API 接口实现计算机软件之间的相互通信。API 的一个主要功能是提供通用功能集。程序员通过使用 API 函数开发应用程序,从而可以避免编写无用程序,以减轻编程任务。 API 同时也是一种中间件,为各种不同平台提供数据共享。

从调用API接口 看.net framework和 net core的异同

由于.netcore是跨平台使用的,所有微软重写好多API,由此有些差异也是正常的。现在就来看下请求API的差别吧。首先,原本的.netframework请求方法:复制代码publicstaticTHttpPostWithDecompression(stringrequest,stringurl,inttimeout)whereT:new(){varhttpWebRequest=(HttpWebRequest)WebRequest.Create(url);httpWebRequest.Proxy=null;httpWebRequest.Timeout=timeout;httpWebRequest.Method="POST";httpWebRequest.ContentType="application/json";httpWebRequest.AutomaticDecompression=DecompressionMethods.Deflate|DecompressionMethods.GZip;varbytes=Encoding.UTF8.GetBytes(request);StreamrequestStream=null;varresponseContent=string.Empty;try{requestStream=httpWebRequest.GetRequestStream();requestStream.Write(bytes,0,bytes.Length);varwebResponse=httpWebRequest.GetResponse();varstream=webResponse.GetResponseStream();if(stream!=null){varstreamReader=newStreamReader(stream);responseContent=streamReader.ReadToEnd();streamReader.Close();}webResponse.Close();returnJsonConvert.DeserializeObject(responseContent);}catch(Exceptionexception){returnnewT();}finally{if(requestStream!=null){requestStream.Close();}}}复制代码第一种返回错误编码的.netcore的写法:复制代码publicasyncstaticTaskHttpPostWithDecompression(stringrequest,stringurl,inttimeout)whereT:new(){varhttpWebRequest=(HttpWebRequest)WebRequest.Create(url);httpWebRequest.Proxy=null;httpWebRequest.ContinueTimeout=timeout;httpWebRequest.Method="POST";httpWebRequest.ContentType="application/json";httpWebRequest.Headers["Accept-Encoding"]="gzip,deflate";//httpWebRequest.AutomaticDecompression=DecompressionMethods.Deflate|DecompressionMethods.GZip;vardata=Encoding.UTF8.GetBytes(request);using(varrequestStream=awaithttpWebRequest.GetRequestStreamAsync())//释放{requestStream.Write(data,0,data.Length);}stringresult=string.Empty;//响应流using(varresponse=(HttpWebResponse)awaithttpWebRequest.GetResponseAsync()){StreamresponseStream=null;if(response.StatusCode==HttpStatusCode.OK){responseStream=response.GetResponseStream();if(responseStream!=null){varstreamReader=newStreamReader(responseStream,Encoding.UTF8);//获取返回的信息result=streamReader.ReadToEnd();returnJsonConvert.DeserializeObject(result);}}}returnnewT();}复制代码查看下.netcore下的属性和方法:可以明显发现比.netframwork下少了好多。也就是.netcore的请求类型,更趋于向浏览器的请求头靠拢,也就是使用Headers字典(.netframwork下也有,但是同层级也会有一些属性,比如采用压缩)。主要的区别就是响应流采用的是异步的方式,而.netframwork采用同步的方式,必须手动close(),而新的写法,就只能用using了。但是,上述的这个方法,害死人了,请求也成功,就是编码始终调试不对,请求各位大神指点一二。由于水平问题,未能解决上述问题,所以小弟采用.netcore的HttpClientHandler类进行http请求:get方法复制代码//////get请求//////url包含参数publicstaticasyncTaskdoGet(stringurl)whereT:new(){varhandler=newHttpClientHandler(){AutomaticDecompression=DecompressionMethods.GZip};using(varhttp=newHttpClient(handler)){varresponse=awaithttp.GetAsync(url);//确保HTTP成功状态值response.EnsureSuccessStatusCode();stringresponseStr=response.Content.ReadAsStringAsync().Result;returnJsonConvert.DeserializeObject(responseStr);}}复制代码post请求复制代码//////post请求//////url包含参数publicasyncstaticTaskHttpPostWithDecompression(stringrequest,stringapiUrl,inttimeout)whereT:new(){HttpClientHandlerhandler=newHttpClientHandler();handler.Proxy=null;handler.AutomaticDecompression=DecompressionMethods.GZip|DecompressionMethods.Deflate;vardata=Encoding.UTF8.GetBytes(request);using(varhttpClient=newHttpClient(handler)){httpClient.BaseAddress=newUri(apiUrl);httpClient.DefaultRequestHeaders.Accept.Add(newMediaTypeWithQualityHeaderValue("application/json"));varcont=newStringContent(request);//varcontent=newFormUrlEncodedContent(JsonConvert.DeserializeObject(request));//被上面这个注释掉的代码,这种偷懒转Dic的方式给坑苦了,不能这么用啊!!!varresponse=awaithttpClient.PostAsync(apiUrl,cont);stringresult=response.Content.ReadAsStringAsync().Result;returnJsonConvert.DeserializeObject(result);}} 关于微软api接口和微软接口都有什么区别的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 微软api接口的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于微软接口都有什么区别、微软api接口的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java Swing实现餐厅点餐系统源码(收藏版)
下一篇:Java中的常用输入输出语句的操作代码
相关文章

 发表评论

暂时没有评论,来抢沙发吧~