Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erklärung der XML-RPC-Erfahrung

Detaillierte Erklärung der XML-RPC-Erfahrung

黄舟
黄舟Original
2017-03-16 16:53:402153Durchsuche

Ich war heute bei Yuanzi und habe festgestellt, dass Yuanzi bereits die WebBlog-Funktion von Office2007 unterstützt, also habe ich geprüfte und verwendete 🎜>XML-RPC Technologie. Öffnen Sie dudu XML-RPCPRC der API Es fühlt sich an wie WebService, aber wenn man genauer hinschaut, stellt sich heraus, dass dies nicht der Fall ist. Erst dann ist Ihnen aufgefallen, dass XML-PRC funktioniert. Was ist XML-RPC (Lachen Sie mich nicht aus, weil ich unwissend bin, ich kenne es nur mit Google). XML-RPCEs stellt sich heraus, dass es so ist:

What’s XML-RPC?
It's a spec and a set of implementations that allow software running on disparate operating systems, 
running in different environments to make procedure calls over the Internet.
It's remote procedure calling using HTTP as the transport and XML as the encoding. XML-RPC is designed to be as simple as possible, 
while allowing complex data structures to be transmitted, processed and returned.


Vereinfacht ausgedrückt verwendet es HTTP als Übertragungsprotokoll und XML als Dateninhalt zum Implementieren des Remote-Methodenaufrufs. Ein Standard (sehr ähnlich zu WebService). Einzelheiten finden Sie im XML-PRC Standard http://www.xmlrpc.com/ Ich werde es nicht sagen mehr hier.

Da es sich um einen Standard handelt, wird ihn auf jeden Fall jemand umsetzen. Gehen Sie zu http://sourceforge.net/ Ich habe gesucht und es stellte sich heraus, dass es der Fall ist, aber leider gibt es keine Implementierung von .Net Werfen wir einen Blick auf die Implementierung von dudu. Habe das in dudus API gefunden, haha, er sollte es sein. GoogleIch liebe dich so sehr, du hast mir geholfen, es zu finden http://www.cookcomputing.com/blog/index.html , haha, es stellt sich heraus, dass cookcomuting unter .NetXML-PRC implementiert ist . , lass es mich erleben XML-PRC.

下载源代码后,运行里面的Math这个SampleVery Cool使用这个Liberry非常简单,感觉比Remoting还要简单,遗憾的是现在的版本由于.Net Framework的原因现在只支持Framework 1.1不支持Framework 2.0,在说明中会在以后版本支持 Framework 2.0

哈哈,大家赶快去体验吧。

体验之后发现XML-PRC.Net客户端实现代理模式挺有意思,决定研究一下。打开源代码发现使用的是动态创建Assembly的技术,也就是该技术导致了不支持Framework2.0的原故。

 
   从上面的图(画的不好请见谅)看出客户端通过
XmlRpcProxyGenCreate方法创建了一个实现YourInterface的类,同时继承XmlRpcClientProtocol,在这里使用了AssemblyBuilder具体可以查看MSDN。然后把YourInterface的方法全部由XmlRpcClientProtocol的一个Invoke的方法代理,该函数的签名如下:

public object Invoke(string MethodName,params object[]Parameters)

哈哈,这回终于找到关键所在了,在Invoke方法里面就可以按照XML-RPC的标准通过WebRequest对象调用远程的方法了。

Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung der XML-RPC-Erfahrung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn