News Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Gonzalo Ayuso:
Building a simple API proxy server with PHP
August 14, 2012 @ 11:07:56

In some of his work with Backbone.js recently, Gonzalo Ayuso has been frustrated by something that's a wall for many developers wanting to work with outside datasources - the browser restriction that prevents cross-domain requests. His solution? Create a REST proxy to live on his server and pass the requests through.

Nowadays there is a header to allow it: Access-Control-Allow-Origin. The problem is that the remote server must set up this header. For example I was playing with github's API and github doesn't have this header. If the server is my server, is pretty straightforward to put this header but obviously I'm not the sysadmin of github, so I cannot do it. What the solution? One possible solution is, for example, create a proxy server at localhost with PHP.

He shares the full code for his project - basically a handler that takes the incoming request and mirrors to out to the public, remote API - request method and all. It uses some of the packages from Symfony (like the http-foundation) and wraps around cURL to handle the requests. The project is available for Composer users as well.

0 comments voice your opinion now!
api proxy server tutorial rest curl wrapper


blog comments powered by Disqus

Similar Posts

SitePoint PHP Blog: Unit Testing with GuzzlePHP

DevChix: Getting started with YUI's Connection Manager in Rails and PHP

Juan Treminio: Unit Testing with PHPUnit Tutorial Series

WorkingSoftware.com.au: Configuring PHP4 and PHP5 to run concurrently on FreeBSD

NetTuts.com: The Whens and Whys for PHP Design Patterns


Community Events





Don't see your event here?
Let us know!


library package introduction series interview community list release install tips deployment framework podcast language symfony update zendserver api laravel opinion

All content copyright, 2014 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework