เขียน web service XML-RPC บน Symfony Framework

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: เขียน web service XML-RPC บน Symfony Framework

Re: เขียน web service XML-RPC บน Symfony Framework

โดย thatsawan » 16/11/2015 11:03 pm

ลองเอาเข้ามาใช้งานกับ phpBB เเล้ว
จะมีปัญหาก็ตรง $this->getRequest()


ตรงนี้ของ Symfony ใช้งานได้เนื่องจาก use Symfony\Bundle\FrameworkBundle\Controller\Controller;
เพราะphpBB จะไม่มีมาให้

เขียน web service XML-RPC บน Symfony Framework

โดย mindphp » 09/11/2015 11:54 pm

เขียน web service XML-RPC บน Symfony Framework
แนะนำ ลองใช้ ตัวนี้
https://github.com/skolodyazhnyy/symfony-rpc-bundle

ตัวอย่างฝั่ง Server

โค้ด: เลือกทั้งหมด

namespace Sample\WebserviceBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Seven\RpcBundle\XmlRpc\Server;

class CalcHandler {

    public function add($a, $b) { return $a + $b; }

    public function sub($a, $b) { return $a - $b; }

    public function div($a, $b) { return $a / $b; }

}

class WebServiceController extends Controller
{
    public function handleAction()
    {
        // Create XML-RPC Server
        $server = new Server();

        // Add handlers
        $server->addHandler('help', function() { return "Use methods calc.add, calc.sub and calc.div."; });
        $server->addHandler('calc', 'CalcHandler');

        // Handler request and return response
        return $server->handle($this->getRequest());
    }
} 
ตัวอย่างการเรียกใช้ client

โค้ด: เลือกทั้งหมด

$client = new Seven\RpcBundle\XmlRpc\Client("http://xmlrpcservice/endpoint");

echo $client->call('calc.add', array(1, 2)); // echo 3
echo $client->call('calc.sub', array(2, 3)); // echo -1 

ข้างบน