使用 Atom API [PHP] 发布到 livedoor 博客

 使用 Atom API [PHP] 开发 livedoor 


Atom Pub API

https://help.blogpark.jp/archives/52372407.html 

https://help.blogpark.jp/archives/52288925.html

参考 https://github.com/taoka-toshiaki/livedoor_blog_api/blob/main/livedoor.php

使用curl开发,会有文字限制。

https://qiita.com/taoka-toshiaki/items/a9c21e31cdf8d7c616c1 


参考链接:
Post to livedoor Blog with Atom API [PHP]: Aim for Level 1!30年代上班族抱石日记
API/AtomPub--livedoor博客总结站
PHP:cURL函数--手册
【后续】打败Amebro的AtomAPI:瞄准一年级!30 年代工薪族抱石日记
http://pct.unifas.co.jp/php%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%82%A2%E3 % 83% A1% E3% 83% 96% E3% 83% AD% E3% 81% B8% E6% 8A% 95% E7% A8% BF% E3% 81% 99% E3% 82% 8B% E6% 96% B9% E6% B3% 95-226 /

①HTTP_Request2を入手する
以下のページから取ってくる。
http://pear.php.net/package/HTTP_Request2/download


②Net_URL2を入手する
以下のページから取ってくる。
http://pear.php.net/package/Net_URL2/download


③自分のサーバにファイルを展開する
取ってきたHTTP_Request2とNet_URL2のファイルを自分のサーバに展開する。
tar zxvf xxxxコマンドで解凍できる。


④ディレクトリを移動する
HTTP_Request2の「HTTP」ディレクトリを自前の「hoge」ディレクトリ下に移動する。
また、Net_URL2「Net」ディレクトリを自前の「hoge」ディレクトリ下に移動する。
(↓こんな感じにする)

hoge
│
├─HTTP
│  ├─Request2.php
│  └─Request2
│
└─Net
    └─URL2.php


php内でインクルードする
phpでインクルードするときに以下のようにパスを通しておく。
これでHTTP_Request2が使えるようになる。

//パスを通してインクルード
$path = dirname(__FILE__)."/hoge";
set_include_path(get_include_path().PATH_SEPARATOR.$path);
require_once("HTTP/Request2.php");

//通信開始!
$url = "http://www.hoge.jp/";
$req = new HTTP_Request2();
$req->setUrl($url);
$req->setMethod(HTTP_Request2::METHOD_GET);

try {
  $resp = $req->send();
  if ($resp->getStatus() == 200){
    echo("取得成功!\n"); 
    echo $resp->getBody();
  }else{
    //取得失敗したとき
    throw new Exception ("errstatus:".$resp->getStatus());
  }
} catch (HTTP_Request2_Exception $e) {
  echo("取得失敗!".$e->getMessage());
} 捕捉(异常$e){
  echo("获取失败!".$E- > getMessage());
}
这里有给出 httprequest 的demo 
https://soramugi.hatenadiary.org/entry/20111109/1320853307
https://absg.hatenablog.com/entry/2018/05/29/184144

翻译看了一下评论。难受。不折腾了。
  •  Soramugi id: soramugi )

    有段时间看不到动静
    ,但是发帖不发帖是什么状态?

  •  柴田

    谢谢您的帮助。

    我为难以理解的写作风格感到抱歉。

    如果标题是字母数字,则会发布,但
    如果是全角标题,则不会发布。

    例如,
    $title = "test" OK
    $title = "TEST" NG

    $title = "test1" OK
    $title = "test1" NG即使全

    角字符混合,也
    不会发布。

    顺便说一句,
    如果发布成功,即使是汉字也可以正确写入文本($文本)


    谢谢你。

  •  柴田

    我正在尝试各种事情。我添加了<dc:subject type="text/html" mode="escaped">'.$Category.'</dc:subject>'.到本次

    提供的那个。同样在这种情况下,如果$ category 是全角,即使 $ title 是半角也无法进行发布。是否与 "type="text/html"mode="escaped">" 相关另外,如果您能告诉我如何匹配博客中注册的类别,我将不胜感激

  •  Soramugi id: soramugi )

    即使在我的环境中使用全角输入,$ title 似乎也可以正确发布。
    $text创建的时候,可能和字符码有关,因为$text是通过中途应用[base64_encode($text);]转换的,而$title是按原样传递的...

    更改保存文件的字符代码,或与 $ text 相同的方法进行转换。
    转换时,请使['<title type =]的[mode = "escaped"]与$ text相同。我记得这是一个字符代码设置,但我有点担心它是否适合。也许这会起作用,可能。
    该类别可能具有相同的推理。
    分类匹配和这篇文章有点不一样,请我单独试一试。

    如果可以,请在此处写评论或将其作为文章发布在您的博客上,所以请尽力而为。

  •  柴田

    谢谢你的建议。
    欣赏。

    我尝试了各种方法,但它不起作用。

    我在另一台服务器上尝试过,结果是一样的。

    既然soramugi可以发帖,
    soramugi和我唯一的区别就是
    “HTTP / Request2.php”。
    是不是可以公开(准备下载)

    在我的例子中,
    HTTP
    ├ Request2.php
    ├ Ner
    │ └ url2.php   └ Request
      ├ Adapter │ ├ Curl.php │ ├ Mock.php │ ├ Sccket.php │ └ Adapter.php ├ PEAR │ └ Exception.php └ It结构为.php ,但文件内容可能不同。谢谢你。

  •  Soramugi id: soramugi )

    HTTP/Request2.php 不是我做的,所以不能发布。
    很难想象内容不同,因为我根本没有玩过。

    看不懂了,强烈建议你自己去调查了解。

  •  柴田

    我一次又一次地感到抱歉。
    最后,请只告诉我HTTP/Request2.php 的版本。
    好像有好几种。
    谢谢你。

  •  Soramugi id: soramugi )

    * @version Release:上面写着 0.5.1

  •  柴田

    不知何故,我现在可以全角发帖了。
    原因仍然是编码。

    1.如果$title的实际数据是shift_jis,
    a.<?xml version = "1.0"?> → <?xml version = "1.0" encoding = "shift_jis"?>
     b.脚本本身是"shift_jis"。用2保存

    。如果$title的实际数据是shift_jis,
    a.<?xml version = "1.0"?>
     原样b.把脚本本身保存为“UTF-8N”另存为
      “UTF-8”那么标题会乱码。

    3.如果$title的实际数据是UTF-8,
    a. <?xml version = "1.0"?>
     原样 b. 把脚本本身另存为"UTF-8N" 另存为
      "UTF-8" 那么标题会乱码。毕竟,如果我从一开始就尝试

    不仅保存“UTF-8”而且还保存“UTF-8N”,这是一个解决方案。我很抱歉给您带来麻烦。感谢soramugi在我忙碌的时候照顾我。欣赏。非常感谢。此外,该类别尚未解决,因此我们将继续调查。

  •  Soramugi id: soramugi )

    恭喜你能够发帖。
    我还没有完全理解字符代码的关系,所以很抱歉我不能正确回答。

    另外,感谢您写出解决方案。请在该类别中也尽力而为。

没有评论:

发表评论

Follow Us

FOLLOW US

Blog Archive

Comments

Blogger 提供支持.

Search This Blog

Tags

header ads