Submit Search
Upload
Barcamp
•
Download as ODP, PDF
•
0 likes
•
465 views
R
renelc
Follow
Como generar un API para tu sitio web usando XML-RPC
Read less
Read more
Education
Report
Share
Report
Share
1 of 11
Download now
Recommended
Add tag shortcode
Add tag shortcode
Peter Baylies
Java Script - Object-Oriented Programming
Java Script - Object-Oriented Programming
intive
JS programowanie obiektowe
JS programowanie obiektowe
Piotr Czajkowski
Testování prakticky
Testování prakticky
Filip Procházka
jQuery PLUGIN
jQuery PLUGIN
blueweb_sk
JavaScript de qualidade: hoje, amanhã e sempre!
JavaScript de qualidade: hoje, amanhã e sempre!
Thiago de Oliveira Pires
Ejercicios basicos php lenin quishpe
Ejercicios basicos php lenin quishpe
LENINMATEO1
Simular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentaria
jbersosa
Recommended
Add tag shortcode
Add tag shortcode
Peter Baylies
Java Script - Object-Oriented Programming
Java Script - Object-Oriented Programming
intive
JS programowanie obiektowe
JS programowanie obiektowe
Piotr Czajkowski
Testování prakticky
Testování prakticky
Filip Procházka
jQuery PLUGIN
jQuery PLUGIN
blueweb_sk
JavaScript de qualidade: hoje, amanhã e sempre!
JavaScript de qualidade: hoje, amanhã e sempre!
Thiago de Oliveira Pires
Ejercicios basicos php lenin quishpe
Ejercicios basicos php lenin quishpe
LENINMATEO1
Simular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentaria
jbersosa
Java script.trend(spec)
Java script.trend(spec)
dynamis
Silex. Микрофреймворк для микроприложений
Silex. Микрофреймворк для микроприложений
Softline
PHP Profiling
PHP Profiling
Sungbum Hong
JavaScript Dynamic Loading
JavaScript Dynamic Loading
Tomokazu Kiyohara
Sumahex
Sumahex
jbersosa
Sumahexavector
Sumahexavector
jbersosa
HTTP Interceptors com AngularJS
HTTP Interceptors com AngularJS
Rodrigo Branas
変態的PHPフレームワーク rhaco
変態的PHPフレームワーク rhaco
makoto tsuyuki
ECMA2015 INSIDE
ECMA2015 INSIDE
Jun Ho Lee
JavaScript Tips
JavaScript Tips
裕介 藤木
Construcción de Extensiones y Jetpacks
Construcción de Extensiones y Jetpacks
ccarruitero
Silex al límite
Silex al límite
Javier Eguiluz
JavaScript
JavaScript
Aleksandr Motsjonov
Алексей Кутумов, C++ без исключений, часть 3
Алексей Кутумов, C++ без исключений, часть 3
Platonov Sergey
Form Script
Form Script
lotlot
Cajero
Cajero
robjess24
Sumahexavector
Sumahexavector
jbersosa
Proyecto Final Android-SQLite
Proyecto Final Android-SQLite
José Antonio Sandoval Acosta
珠三角技术沙龙新语言场 C++11
珠三角技术沙龙新语言场 C++11
翀 周
Juan
Juan
17gilmar
Amigos tutunaku
Amigos tutunaku
renelc
Carnaval San Francisco Tlahcuilocan 2014
Carnaval San Francisco Tlahcuilocan 2014
renelc
More Related Content
What's hot
Java script.trend(spec)
Java script.trend(spec)
dynamis
Silex. Микрофреймворк для микроприложений
Silex. Микрофреймворк для микроприложений
Softline
PHP Profiling
PHP Profiling
Sungbum Hong
JavaScript Dynamic Loading
JavaScript Dynamic Loading
Tomokazu Kiyohara
Sumahex
Sumahex
jbersosa
Sumahexavector
Sumahexavector
jbersosa
HTTP Interceptors com AngularJS
HTTP Interceptors com AngularJS
Rodrigo Branas
変態的PHPフレームワーク rhaco
変態的PHPフレームワーク rhaco
makoto tsuyuki
ECMA2015 INSIDE
ECMA2015 INSIDE
Jun Ho Lee
JavaScript Tips
JavaScript Tips
裕介 藤木
Construcción de Extensiones y Jetpacks
Construcción de Extensiones y Jetpacks
ccarruitero
Silex al límite
Silex al límite
Javier Eguiluz
JavaScript
JavaScript
Aleksandr Motsjonov
Алексей Кутумов, C++ без исключений, часть 3
Алексей Кутумов, C++ без исключений, часть 3
Platonov Sergey
Form Script
Form Script
lotlot
Cajero
Cajero
robjess24
Sumahexavector
Sumahexavector
jbersosa
Proyecto Final Android-SQLite
Proyecto Final Android-SQLite
José Antonio Sandoval Acosta
珠三角技术沙龙新语言场 C++11
珠三角技术沙龙新语言场 C++11
翀 周
Juan
Juan
17gilmar
What's hot
(20)
Java script.trend(spec)
Java script.trend(spec)
Silex. Микрофреймворк для микроприложений
Silex. Микрофреймворк для микроприложений
PHP Profiling
PHP Profiling
JavaScript Dynamic Loading
JavaScript Dynamic Loading
Sumahex
Sumahex
Sumahexavector
Sumahexavector
HTTP Interceptors com AngularJS
HTTP Interceptors com AngularJS
変態的PHPフレームワーク rhaco
変態的PHPフレームワーク rhaco
ECMA2015 INSIDE
ECMA2015 INSIDE
JavaScript Tips
JavaScript Tips
Construcción de Extensiones y Jetpacks
Construcción de Extensiones y Jetpacks
Silex al límite
Silex al límite
JavaScript
JavaScript
Алексей Кутумов, C++ без исключений, часть 3
Алексей Кутумов, C++ без исключений, часть 3
Form Script
Form Script
Cajero
Cajero
Sumahexavector
Sumahexavector
Proyecto Final Android-SQLite
Proyecto Final Android-SQLite
珠三角技术沙龙新语言场 C++11
珠三角技术沙龙新语言场 C++11
Juan
Juan
Viewers also liked
Amigos tutunaku
Amigos tutunaku
renelc
Carnaval San Francisco Tlahcuilocan 2014
Carnaval San Francisco Tlahcuilocan 2014
renelc
Cuentos Náhuatl de la Malintzin
Cuentos Náhuatl de la Malintzin
renelc
3er Congreso nacional nauraleza-sociedad reflexiones desde la complejidad
3er Congreso nacional nauraleza-sociedad reflexiones desde la complejidad
renelc
Programa de feria Huamantla 2011
Programa de feria Huamantla 2011
renelc
Harm reduction & the web
Harm reduction & the web
Sean Yo
Web 2.0 Experiential Learning
Web 2.0 Experiential Learning
Sean Yo
Programa de feria Tlaxcala 2011
Programa de feria Tlaxcala 2011
renelc
Web2013
Web2013
Sean Yo
Viewers also liked
(9)
Amigos tutunaku
Amigos tutunaku
Carnaval San Francisco Tlahcuilocan 2014
Carnaval San Francisco Tlahcuilocan 2014
Cuentos Náhuatl de la Malintzin
Cuentos Náhuatl de la Malintzin
3er Congreso nacional nauraleza-sociedad reflexiones desde la complejidad
3er Congreso nacional nauraleza-sociedad reflexiones desde la complejidad
Programa de feria Huamantla 2011
Programa de feria Huamantla 2011
Harm reduction & the web
Harm reduction & the web
Web 2.0 Experiential Learning
Web 2.0 Experiential Learning
Programa de feria Tlaxcala 2011
Programa de feria Tlaxcala 2011
Web2013
Web2013
Recently uploaded
أَسَانِيدُ كُتُبِ وَأُصُولِ النَّشْرِ لِابْنِ الْجَزَرِيِّ وَالْوَصْلُ بِهَا....
أَسَانِيدُ كُتُبِ وَأُصُولِ النَّشْرِ لِابْنِ الْجَزَرِيِّ وَالْوَصْلُ بِهَا....
سمير بسيوني
TUYỂN TẬP 25 ĐỀ THI HỌC SINH GIỎI MÔN TIẾNG ANH LỚP 6 NĂM 2023 CÓ ĐÁP ÁN (SƯU...
TUYỂN TẬP 25 ĐỀ THI HỌC SINH GIỎI MÔN TIẾNG ANH LỚP 6 NĂM 2023 CÓ ĐÁP ÁN (SƯU...
Nguyen Thanh Tu Collection
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
Nguyen Thanh Tu Collection
، ژیانا ئینگلیزا ب کوردی ، ئینگلیزەکان ، راپورتی کوردی ، راپورتا مێژوی ، ژ...
، ژیانا ئینگلیزا ب کوردی ، ئینگلیزەکان ، راپورتی کوردی ، راپورتا مێژوی ، ژ...
Idrees.Hishyar
TUYỂN TẬP 20 ĐỀ THI KHẢO SÁT HỌC SINH GIỎI MÔN TIẾNG ANH LỚP 6 NĂM 2020 (CÓ Đ...
TUYỂN TẬP 20 ĐỀ THI KHẢO SÁT HỌC SINH GIỎI MÔN TIẾNG ANH LỚP 6 NĂM 2020 (CÓ Đ...
Nguyen Thanh Tu Collection
French Revolution (फ्रेंच राज्यक्रांती)
French Revolution (फ्रेंच राज्यक्रांती)
Shankar Aware
Recently uploaded
(6)
أَسَانِيدُ كُتُبِ وَأُصُولِ النَّشْرِ لِابْنِ الْجَزَرِيِّ وَالْوَصْلُ بِهَا....
أَسَانِيدُ كُتُبِ وَأُصُولِ النَّشْرِ لِابْنِ الْجَزَرِيِّ وَالْوَصْلُ بِهَا....
TUYỂN TẬP 25 ĐỀ THI HỌC SINH GIỎI MÔN TIẾNG ANH LỚP 6 NĂM 2023 CÓ ĐÁP ÁN (SƯU...
TUYỂN TẬP 25 ĐỀ THI HỌC SINH GIỎI MÔN TIẾNG ANH LỚP 6 NĂM 2023 CÓ ĐÁP ÁN (SƯU...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
، ژیانا ئینگلیزا ب کوردی ، ئینگلیزەکان ، راپورتی کوردی ، راپورتا مێژوی ، ژ...
، ژیانا ئینگلیزا ب کوردی ، ئینگلیزەکان ، راپورتی کوردی ، راپورتا مێژوی ، ژ...
TUYỂN TẬP 20 ĐỀ THI KHẢO SÁT HỌC SINH GIỎI MÔN TIẾNG ANH LỚP 6 NĂM 2020 (CÓ Đ...
TUYỂN TẬP 20 ĐỀ THI KHẢO SÁT HỌC SINH GIỎI MÔN TIẾNG ANH LỚP 6 NĂM 2020 (CÓ Đ...
French Revolution (फ्रेंच राज्यक्रांती)
French Revolution (फ्रेंच राज्यक्रांती)
Barcamp
1.
2.
¿XML-RPC? Es una
especificacion que permite a software corriendo en diferentes SO y ambientes realizar llamadas a procedimientos sobre el internet Es una llamada a un procedimiento remoto usando HTTP y XML para la codificacion
3.
4.
Llamada XML-RPC <?xml
version="1.0"?> <methodCall> <methodName>jibberjobber.getContacts</methodName> <params> <param> <value><struct> <member><name>name</name> <value><string>John</string></value> </member> <member><name>lname</name> <value><string>Doe</string></value> </member> </struct></value> </param> </params> </methodCall>
5.
Tipos de Datos
6.
Struct y Array
<struct> <struct> <member> <name>name</name> <value><string>John</string></value> </member> <member> <name>age</name> <value><i4>21</i4></value> </member> </struct> <array> <array> <data> <value><i4>12</i4></value> <value><string>Egypt</string></value> <value><boolean>0</boolean></value> <value><int>-31</int></value> </data> </array>
7.
Respuestas XML <?xml
version="1.0"?> <methodResponse> <params> <param> <value><string>South Dakota</string></value> </param> </params> </methodResponse> <?xml version="1.0"?> <methodResponse> <fault> <value> <struct> <member> <name>faultCode</name> <value><int>4</int></value> </member> <member> <name>faultString</name> <value><string>Too many parameters.</string></value> </member> </struct> </value> </fault> </methodResponse>
8.
Libreria http://phpxmlrpc.sourceforge.net/
9.
Ejemplo Servidor <?php
include( 'xmlrpc/xmlrpc.inc' ); include( 'xmlrpc/xmlrpcs.inc' ); $xmlrpc_defencoding = "UTF8"; $xmlrpc_internalencoding = 'UTF-8'; function getStructValue( &$struct, $key ) { if( $struct->structMemExists( $key ) ) { $val = $struct->structMem($key); return $val->scalarVal(); } else { return false; } }
10.
Continua function add(
$params ) { global $xmlrpcerruser; $struct = $params->getParam(0); $name = getStructValue( $struct, 'name' ); // Aqui se prueba si el usuario esta autorizado if( true ){ $struct = array( 'id' => new xmlrpcval( $id, 'int' ), 'dateCreated' => new xmlrpcval( $data['dateCreated'], 'dateTime.iso8601' ) ); return new xmlrpcresp( new xmlrpcval( $struct, 'struct' ) ); } else { return new xmlrpcresp( 0, $xmlrpcerruser,, "The login failed" ); } } $s = new xmlrpc_server( array( "example.add" => array("function" => "add"), ) ); ?>
11.
Ejemplo del cliente
<?php include( 'xmlrpc/xmlrpc.inc' ); include( 'xmlrpc/xmlrpcs.inc' ); $client = new xmlrpc_client( "http://127.0.0.1/barcamp/xml-rpc.php" ); $client->setDebug( 2 ); $struct = array( 'username' => new xmlrpcval('demo', 'string'), 'password' => new xmlrpcval('demo', 'string' ), 'name' => new xmlrpcval('John', 'string' ) ); $message = new xmlrpcmsg( "example.add ", array( new xmlrpcval( $struct, 'struct' ) ) ); $response = $client->send( $message ); ?>
Download now