Постинг через Facebook API v3 (18.11.2014)
Использую старую версию Facebook PHP SDK (v.3.2.3), поскольку для четверки нужен имеющийся не везде PHP 5.4.
Авторизация:
<?
require 'facebook-php-sdk/src/facebook.php';

$facebook = new Facebook(array(
  'appId'  => '$appId',
  'secret' => '$secret',
));

// Get User ID
$user = $facebook->getUser();
Костыль со stackoverflow, перенаправляющий нас на авторизацию, если она не подхватилась:
if ($user <> '0' && $user <> '') { /*if valid user id i.e. neither 0 nor blank nor null*/
  try {
  // Proceed knowing you have a logged in user who's authenticated.
    $user_profile = $facebook->api('/me');
  } catch (FacebookApiException $e) { /*sometimes it shows user id even if user in not logged in and it results in Oauth exception. In this case we will set it back to 0.*/
    error_log($e);
    $user = '0';
  }
}
else {/*If user id isn't present just redirect it to login url*/
  header("Location:{$facebook->getLoginUrl(array('req_perms' => 'email,offline_access'))}");
}
Попытаемся запостить сообщение на стену группы:
$facebook->api('/$group_id/feed/', 'post', array(
    'message' => 'I want to display this message on my wall',
  'link' => 'http://kodilo.ru',
  'picture' => 'http://images.boomsbeat.com/data/images/full/1893/facebook-jpg.jpg',
  'name' => 'The name of the link',
  'caption' => 'Caption of the link',
  'description' => 'Description of the link'
));
?>

Facebook PHP SDK
Решение проблемы с user=0
PHP, API
Постинг через API vk.com (13.11.2014)
Авторизация для JS-приложений (будут работать с разных ip и без редиректа токена):
https://oauth.vk.com/authorize?client_id=APP_ID&redirect_uri=https://oauth.vk.com/blank.html
&response_type=token&scope=friends,wall,offline&v=5.26
Параметр offline дает нам "вечный" токен до смены авторизовавшим его пользователем пароля. Токен будет получен в hash-части url.

Пример вызова метода:
https://api.vk.com/method/wall.post?owner_id=-PUBLIC_ID&access_token=TOKEN&message=MESSAGE&v=5.26

PHP и другие серверы: метод с получением code, затем token - херня и, хоть он до сих пор опубликован в документации, не работает. Токен все равно надо получать через браузер, как в примере выше.
$query = file_get_contents("https://api.vk.com/method/wall.post?owner_id=$public_id&message=Тест&v=5.26&access_token=$token")
JavaScript, PHP, API
JavaScript (13)
PHP (11)
Brainfuck (8)
adm (8)
Joomla (4)
Canvas (3)
answers (2)
API (2)
CMS (2)
Modx (2)
jQuery (1)
Ajax (1)
SQL (1)
Shell (1)
batch (1)
10-6