Не получается добавить закладку с помощью API memori.ru

12
S
На сайте с 29.12.2008
Offline
43
743

Не получается добавить закладку с помощью API memori.ru

Справка об API http://memori.ru/utils/API.pdf

Использую такой скрипт


<?php
/*
login: sanozer
password: deyneruyn45b4
mail: moroz-ol@mail.ru
*/

header('Authorization: Basic '.base64_encode("sanozer:deyneruyn45b4"));

//$hostname = "foto.mail.ru";
//$path = "http://foto.mail.ru/themes";

$hostname = "memori.ru";
$path = urlencode("http://memori.ru/api-v2/posts/add?description=Яндекс&href=http://www.yandex.ru/&extended=Лучший поисковик Рунета&tags=поиск&point=5&read=yes&share=yes&show=yes&start=yes");
// Устанавливаем соединение, имя которого
// передано в параметре $hostname
$fp = fsockopen($hostname, 80, $errno, $errstr, 30);
// Проверяем успешность установки соединения
if (!$fp) echo "$errstr ($errno)<br />\n";
else
{
// Формируем HTTP-заголовки для передачи
// его серверу
$headers = "GET $path HTTP/1.1\r\n";
$headers .= "Host: $hostname\r\n";
// Подделываем cookie
$headers .= "Cookie: ero_accept=1; admin=1;\r\n";
$headers .= "Connection: Close\r\n\r\n";
// Отправляем HTTP-запрос серверу
fwrite($fp, $headers);
// Получаем ответ
$text="";
while (!feof($fp))
{
$text .= fgets($fp, 1024);
}
fclose($fp);
}
echo $text;
?>
[Удален]
#1

srarwars, как говорится "книга есть, ума не надо" ага? :)


<?php
/*
login: sanozer
password: deyneruyn45b4
mail: moroz-ol@mail.ru
*/

header('Authorization: Basic '.base64_encode("sanozer:deyneruyn45b4"));

//$hostname = "foto.mail.ru";
//$path = "http://foto.mail.ru/themes";

$hostname = "memori.ru";

$path = "http://memori.ru/api-v2/posts/add?";
$path .= "description=".urlencode("Яндекс");
$path .= "&href=".urlencode("http://www.yandex.ru/");
$path .= "&extended=".urlencode("Лучший поисковик Рунета");
$path .= "&tags=".urlencode("поиск");
$path .= "&tags=поиск&point=5&read=yes&share=yes&show=yes&start=yes";


// Устанавливаем соединение, имя которого
// передано в параметре $hostname
$fp = fsockopen($hostname, 80, $errno, $errstr, 30);
// Проверяем успешность установки соединения
if (!$fp) echo "$errstr ($errno)<br />\n";
else
{
// Формируем HTTP-заголовки для передачи
// его серверу
$headers = "GET $path HTTP/1.1\r\n";
$headers .= "Host: $hostname\r\n";
// Подделываем cookie
$headers .= "Cookie: ero_accept=1; admin=1;\r\n";
$headers .= "Connection: Close\r\n\r\n";
// Отправляем HTTP-запрос серверу
fwrite($fp, $headers);
// Получаем ответ
$text="";
while (!feof($fp))
{
$text .= fgets($fp, 1024);
}
fclose($fp);
}
echo $text;
?>

bearman добавил 11.11.2009 в 19:23

предполагаю что должно работать. зы: не проверял :)

bearman добавил 11.11.2009 в 19:29

зы: а я ваш пароль знаю

S
На сайте с 29.12.2008
Offline
43
#2
bearman:
srarwars, как говорится "книга есть, ума не надо" ага? :)


<?php
/*
login: sanozer
password: deyneruyn45b4
mail: moroz-ol@mail.ru
*/

header('Authorization: Basic '.base64_encode("sanozer:deyneruyn45b4"));

//$hostname = "foto.mail.ru";
//$path = "http://foto.mail.ru/themes";

$hostname = "memori.ru";

$path = "http://memori.ru/api-v2/posts/add?";
$path .= "description=".urlencode("Яндекс");
$path .= "&href=".urlencode("http://www.yandex.ru/");
$path .= "&extended=".urlencode("Лучший поисковик Рунета");
$path .= "&tags=".urlencode("поиск");
$path .= "&tags=поиск&point=5&read=yes&share=yes&show=yes&start=yes";


// Устанавливаем соединение, имя которого
// передано в параметре $hostname
$fp = fsockopen($hostname, 80, $errno, $errstr, 30);
// Проверяем успешность установки соединения
if (!$fp) echo "$errstr ($errno)<br />\n";
else
{
// Формируем HTTP-заголовки для передачи
// его серверу
$headers = "GET $path HTTP/1.1\r\n";
$headers .= "Host: $hostname\r\n";
// Подделываем cookie
$headers .= "Cookie: ero_accept=1; admin=1;\r\n";
$headers .= "Connection: Close\r\n\r\n";
// Отправляем HTTP-запрос серверу
fwrite($fp, $headers);
// Получаем ответ
$text="";
while (!feof($fp))
{
$text .= fgets($fp, 1024);
}
fclose($fp);
}
echo $text;
?>


bearman добавил 11.11.2009 в 19:23
предполагаю что должно работать. зы: не проверял :)

bearman добавил 11.11.2009 в 19:29
зы: а я ваш пароль знаю

"книга есть, ума не надо" - это вы к чему? Думаете я тупо из книги пример взял?

Нет. Этот скрипт сделал сам.

Ваш код не работает, выдаёт

HTTP/1.1 401 Unauthorized Server: nginx/0.7.62 Date: Wed, 11 Nov 2009 16:33:31 GMT Content-Type: text/html; charset=windows-1251 Connection: close X-Powered-By: PHP/5.2.8 Set-Cookie: MEMORISESSID=fd45fbbe322d400008a215f1ecb0a145; path=/ Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache WWW-Authenticate: Basic Realm="input login" status: 401 Unauthorized Content-Length: 0

Что с того, что вы мой пароль от мемори.ру знаете?

[Удален]
#3


<?php
/*
login: sanozer
password: deyneruyn45b4
mail: moroz-ol@mail.ru
*/

//$hostname = "foto.mail.ru";
//$path = "http://foto.mail.ru/themes";

$hostname = "memori.ru";

$path = "http://memori.ru/api-v2/posts/add?";
$path .= "description=".urlencode("Яндекс");
$path .= "&href=".urlencode("http://www.yandex.ru/");
$path .= "&extended=".urlencode("Лучший поисковик Рунета");
$path .= "&tags=".urlencode("поиск");
$path .= "&tags=поиск&point=5&read=yes&share=yes&show=yes&start=yes";


// Устанавливаем соединение, имя которого
// передано в параметре $hostname
$fp = fsockopen($hostname, 80, $errno, $errstr, 30);
// Проверяем успешность установки соединения
if (!$fp) echo "$errstr ($errno)<br />\n";
else
{
// Формируем HTTP-заголовки для передачи
// его серверу
$headers = "GET $path HTTP/1.1\r\n";
$headers .= "Host: $hostname\r\n";
// Подделываем cookie
$headers .= "Cookie: ero_accept=1; admin=1;\r\n";
$headers .= 'Authorization: Basic '.base64_encode("sanozer:deyneruyn45b4")."\r\n";
$headers .= "Connection: Close\r\n\r\n";
// Отправляем HTTP-запрос серверу
fwrite($fp, $headers);
// Получаем ответ
$text="";
while (!feof($fp))
{
$text .= fgets($fp, 1024);
}
fclose($fp);
}
echo $text;
?>

bearman добавил 11.11.2009 в 19:43

зы. я всегда издеваюсь над собеседником, таков уж я. не нравится, не задавайте вопросов :)

bearman добавил 11.11.2009 в 19:47

localgate:/www/PARSERS/dlesites# php test.php
HTTP/1.1 200 OK
Server: nginx/0.7.62
Date: Wed, 11 Nov 2009 16:47:01 GMT
Content-Type: text/xml; charset=utf-8
Connection: close
X-Powered-By: PHP/5.2.8
Set-Cookie: MEMORISESSID=bcfc3b923072cf5bf2c4ae4612ecc322; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Length: 74

<?xml version="1.0" encoding="utf-8"?>
<result code="done" id="9837908"/>

судя по всему работает :)

зы: даже пароль подошел! )

bearman добавил 11.11.2009 в 20:13

ну что, у вас работает? :)

S
На сайте с 29.12.2008
Offline
43
#4

bearman, спасибо работает.

[Удален]
#5

вы уверены? ))) у меня же заработал.

зы: я правил скрипт, используйте последний который я дал

S
На сайте с 29.12.2008
Offline
43
#6
bearman:
вы уверены? ))) у меня же заработал.

зы: я правил скрипт, используйте последний который я дал

Да, я уверен что работает. Проверил, работает.

[Удален]
#7

ой чтото моск вынесло, прочитал как "НЕ РАБОТАЕТ". прошу прощения за ваш вынос мозга тоже :) я ступил :(

S
На сайте с 29.12.2008
Offline
43
#8

Опять перестало работать несмотря на то, что изменений в скрипт не вносил.


$hostname = "memori.ru";

$path = "http://memori.ru/api-v2/posts/add?";
$path .= "description=".urlencode("Яндекс");
$path .= "&href=".urlencode("http://www.yandex.ru/");
$path .= "&extended=".urlencode("Лучший поисковик Рунета");
$path .= "&tags=".urlencode("поиск");
$path .= "&tags=поиск&point=5&read=yes&share=yes&show=yes&start=yes";


// Устанавливаем соединение, имя которого
// передано в параметре $hostname
$fp = fsockopen($hostname, 80, $errno, $errstr, 30);
// Проверяем успешность установки соединения
if (!$fp) echo "$errstr ($errno)<br />\n";
else
{
// Формируем HTTP-заголовки для передачи
// его серверу
$headers = "GET $path HTTP/1.1\r\n";
$headers .= "Host: $hostname\r\n";
// Подделываем cookie
$headers .= "Cookie: ero_accept=1; admin=1;\r\n";
$headers .= 'Authorization: Basic '.base64_encode("inokeiv:inokeiv")."\r\n";
$headers .= "Connection: Close\r\n\r\n";
// Отправляем HTTP-запрос серверу
fwrite($fp, $headers);
// Получаем ответ
$text="";
while (!feof($fp))
{
$text .= fgets($fp, 1024);
}
fclose($fp);
}
echo $text;
[Удален]
#9


$path .= "&tags=".urlencode("поиск");
$path .= "&tags=поиск&point=5&read=yes&share=yes&show=yes&start=yes";

тут конечно я забыл удалить штуку.


$path .= "&tags=".urlencode("поиск");
$path .= "&point=5&read=yes&share=yes&show=yes&start=yes";

в общем то ошибок больше нету, а что за ошибку на этот раз пишет?

S
На сайте с 29.12.2008
Offline
43
#10

Про параметр tags я сам понял.

Выдаёт вот это

HTTP/1.1 200 OK Server: nginx/0.7.62 Date: Wed, 11 Nov 2009 18:51:02 GMT Content-Type: text/xml; charset=utf-8 Connection: close X-Powered-By: PHP/5.2.8 Set-Cookie: MEMORISESSID=cf775be5b3af2198334aa07c67774b9b; path=/ Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Content-Length: 88

в мемори.ру пишет, что "закладок не найдено"! Но ведь "HTTP/1.1 200 OK "

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий