Closed kurudrive closed 2 years ago
これのことなのかよくわかりません https://b.hatena.ne.jp/guide/bbutton
ExUnit の Hatena ボタンが ブックマーク数をAPIかなんかで取得して表示してるとかそんなしくみになってるのではないかと思うけどそのあたりでのエラーじゃないかなと思うけど僕も詳しくはワカリマセン。
これを見つけたけど使い方がピンと来ません。 http://developer.hatena.ne.jp/ja/documents/bookmark/apis/getcount
確認中・・・
@kurudrive 以下、調査結果と相談です。
はてなのブックマーク数をはてなのAPI経由で取得して表示させているのですが、そこで問題が起きています。
/wp-json/vk_ex_unit/v1/hatena_entry/<対象URLをエンコードしたもの>
です。上記原因を探っている間に気づいたのですが、ExUnitのSNS設定の「投稿数」の「GET (Default)」と「POST」の挙動が逆です。以下の箇所で (bool) ( 'post' !== $opt['entry_count'] ); は (bool) ( 'post' === $opt['entry_count'] ); の誤りです。 https://github.com/vektor-inc/vk-all-in-one-expansion-unit/blob/2b3d240e18261a0e90b26cd2591be01984a83e75/inc/sns/function-sns-btns.php#L381
そのため、本来、上記設定を「GET (Default)」にした際に起こる不具合のはずが、「Post」にした時に発生するようになっています。
ということで、上記ご確認の上で、この対応で良いかご検討ください。
あら、すみません、 完全に共有不足でした。 僕の知ってる範囲では、
Defaultの方はリクエストが少なく速度が早いが、エックスサーバーではエラーになる。 これはエックスサーバーの仕様上避けられない。 そのためPostにすると解消する。
という状態が正常で、 「Post に変更してあるのにエラーが出るからおかしい」
というのが今回のissueの趣旨でした。
で、今確認したら、たしかに Post でエラーが出るけどGETにすると出ないから逆になっちゃってるという事なんですね...
という事は、僕が過去にデフォルトをPostに変更しようとして変更方法を間違えてた疑惑が浮上... 変更履歴確認します...。
@kurudrive そうですね。そうなると挙動が逆になっていることが主原因になりますね。POST設定なのにGETで取得しようとして、URLのクエリパラメータに不正な文字が入っているのでエラーになっています。 「エックスサーバーの仕様上避けられない。」ことも上記に書きましたように、おそらく・・・ですが、対処可能だと考えておりますので、そっちも対応したほうがいいなら対応させていただきますー。
@mthaichi こちら 設定逆になっちゃってる問題修正よろしくお願いいたします。
今村君実装なので詳細は僕も知りません...。