Я считаю, что Github поддерживает JSONP и CORS через API .Вы также можете настроить прокси на стороне сервера, с помощью которого запросы XHR отправляются на страницу того же источника, которая затем выполняет запрос на стороне сервера к Github.
Чтобы ответить на ваш вопрос о прокси,да это очень простоЯ на самом деле сделал это точно два года назад, используя Python и Tornado.Я понимаю, что это не PHP, но он читается достаточно близко к английскому, чтобы дать вам представление о том, как он работает.Этот конкретный прокси-сервер возвращал исходный текст.
# /proxy/gist
class GetGistHandler(BaseHandler):
def get(self, id, filename):
url = 'http://gist.github.com/raw/%s/%s' % (id, urllib.quote(filename))
resp = urlfetch.fetch(url)
self.finish(resp.content)
Затем его можно использовать с чем-то вроде
$.ajax({
url: '/proxy/gist',
dataType: 'JSON',
data: {
id: $('#id').val(),
filename: $('#filename').val()
},
success: function(json) {
// ...
}
});