一旦解決諦めたけど、そのうち何か閃いたり解決策出てくるかもしれないので、
ここまでのやったことメモを置いておく。
投稿した後に何の気なしにやった操作で解決したよ。
投稿から15分も経たずに解決って何だよ。
発端
スマホで撮った写真とかをPCにいちいち持って行くのが面倒なので、
アプリ版で投稿とか出来るようにしたら楽では?とインストールしたが動かなかった
問題1:アプリケーションパスワードでのログイン認証が通らない
アプリケーションパスワード登録しても保存されず、投稿もメディアも何も取得できない
原因:hetemlサーバのPHPがCGI版だったため、Authヘッダが無くなっていた模様
対策:hetemlのコントロールパネルからPHPをモジュール版に変更
hetemlはロリポップ系列のサーバなので、ロリポップサーバでの類似事象を参考にした
これでアプリケーションパスワードが保存され、サーバ上の投稿やメディアを参照出来るようになった
問題2:投稿や下書きの保存が出来ない
下書きを保存しようとしてもエラーが発生して保存できない
サーバ上の下書きを持ってきて参照は出来るのだが、更新出来ない
メディアの登録は出来た
原因:投稿のAPIが401を返している…が、呼びだしているのがpublic-api.wordpress.comのAPI
何で?????? 多分Jetpackプラグインあたりのせい?
原因:モバイルJetpackアプリとWordpress間の認証問題・・・????
Androidアプリ側に、内部ログやネットワークリクエストのトレースログを出す機能があることに気づいたので、
ログ出力させながら叩いてみたところ、
既存の投稿やメディアの取得、メディア登録時はnekozuki.netのAPIを呼びだしているようだが、
新規投稿・下書き保存を実行しようとする際に、public-api.wordpress.comにAPI呼び出しを実行していた。
そりゃwordpress公式使ってないんだから、そんなところに投稿系のAPI叩きに行っても
認証されないに決まってるのでは・・・???????
と思っているのだが、ロリポップ系はちょっとサーバ設定が独特っぽいのと、
関連情報も全然出てこなかったので、一旦ここで諦めた。
これ多分インストール型じゃなくて、wordpress.comにサイト作ってるのなら問題ないんだろうなあ。
…とりあえずメディアの登録は出来るので、スマホの画像を送る、の部分は実現出来るからいいか。
投稿はアプリから管理画面のブラウザリンク開けば対応出来るし。
とか書いた後、モバイルJetpackアプリが統計とか参照するためにwordpress.comと連携しろ、というので、
wordpress.comとインストール型wordpressを連携し、
Jetpackプラグインとwordpress.comを連携し、
モバイル版Jetpackアプリとwordpress.comを連携させた。
結果、wordpress.com上でサイト情報が参照出来るようになり、
モバイルJetpackアプリ上からwordpress.comで参照可能な統計情報や実績、通知なんかが取れるようになり、
つまりアプリからwordpress.comに認証情報が通るようになったので、
API動くようになった、っぽい・・・・・・・・・?????????
この辺り、まったく分かってないのでちゃんと書けない
とりあえず「Jetpackプラグイン入れてwordpress.comと連携して、アプリからも連携したら動いた」
としか言えない・・・
この後、wordpressアプリ側でも処理可能になってたので、
Jetpackプラグインが何かやってたでいいのかな・・・



