LINUX.ORG.RU

История изменений

Исправление kovrik, (текущая версия) :

ИМХО, у Фейсбука API почти идеальный (https://graph.facebook.com). Я бы делал аналогичный ему. Т.е. если с авторизацией - то каждому выдаем access_token, если без нее - то ничего не выдаем.
Затем, юзеры просто делают GET-запросы к серверу (например, http(s)://linux.org.ru/api) и получают результат в json'е.

Пример:

GET 'https://linux.org.ru/api/feed?access_token=blablabla&fields=id,title,text,author_name,author_id,timestamp&count=2&order=desc'
Результат:
{
   "status": 0,
   "feed": {
        {
            "id" : 12345,
            "title": "Был убит Леннарт Поттеринг",
            "text": "Вчера вечером....",
            "author_id": 1,
            "author_name":"maxcom",
            "timestamp":1349770247
        }, 
        {
            "id" : 12344,
            "title": "Леннарт Поттеринг предлагает замену libastral",
            "text": "...",
            "author_id": 1,
            "author_name":"maxcom",
            "timestamp":1349740247
        }
    }
}

Получение комментов - как-то так:

GET 'https://linux.org.ru/api/12345/comments/?access_token=blablabla&fields=id,title,text,author_name,author_id,timestamp&count=2&order=desc'
и т.п.

Исправление kovrik, :

ИМХО, у Фейсбука API почти идеальный. Я бы делал аналогичный ему. Т.е. если с авторизацией - то каждому выдаем access_token, если без нее - то ничего не выдаем.
Затем, юзеры просто делают GET-запросы к серверу (например, http(s)://linux.org.ru/api) и получают результат в json'е.

Пример:

GET 'https://linux.org.ru/api/feed?access_token=blablabla&fields=id,title,text,author_name,author_id,timestamp&count=2&order=desc'
Результат:
{
   "status": 0,
   "feed": {
        {
            "id" : 12345,
            "title": "Был убит Леннарт Поттеринг",
            "text": "Вчера вечером....",
            "author_id": 1,
            "author_name":"maxcom",
            "timestamp":1349770247
        }, 
        {
            "id" : 12344,
            "title": "Леннарт Поттеринг предлагает замену libastral",
            "text": "...",
            "author_id": 1,
            "author_name":"maxcom",
            "timestamp":1349740247
        }
    }
}

Получение комментов - как-то так:

GET 'https://linux.org.ru/api/12345/comments/?access_token=blablabla&fields=id,title,text,author_name,author_id,timestamp&count=2&order=desc'
и т.п.

Исходная версия kovrik, :

ИМХО, у Фейсбука API почти идеальный (ИМХО). Я бы делал аналогичный ему. Т.е. если с авторизацией - то каждому выдаем access_token, если без нее - то ничего не выдаем.
Затем, юзеры просто делают GET-запросы к серверу (например, http(s)://linux.org.ru/api) и получают результат в json'е.

Пример:

GET 'https://linux.org.ru/api/feed?access_token=blablabla&fields=id,title,text,author_name,author_id,timestamp&count=2&order=desc'
Результат:
{
   "status": 0,
   "feed": {
        {
            "id" : 12345,
            "title": "Был убит Леннарт Поттеринг",
            "text": "Вчера вечером....",
            "author_id": 1,
            "author_name":"maxcom",
            "timestamp":1349770247
        }, 
        {
            "id" : 12344,
            "title": "Леннарт Поттеринг предлагает замену libastral",
            "text": "...",
            "author_id": 1,
            "author_name":"maxcom",
            "timestamp":1349740247
        }
    }
}

Получение комментов - как-то так:

GET 'https://linux.org.ru/api/12345/comments/?access_token=blablabla&fields=id,title,text,author_name,author_id,timestamp&count=2&order=desc'
и т.п.