APP LINKのメッセージで「?」「&」が使えない。
APP LINKのメッセージで「?」「&」といった文字が使用できません。
具体的には下記の赤字のような文字を含むURLを作成すると正しく動作しません。
下記例では「ABC?DEF」というメッセージを相手に送信したい。
https://line.worksmobile.com/message/send?version=18&message=ABC?DEF&emailList=sample@accountId
「?」「&」といった文字を上記URLのメッセージに入れたい場合はどうすればよろしいでしょうか?
投稿に新しいコメントが追加されましたら通知を送信します。
コメント8
업데이트 된 답글입니다.
とある会社の従業員
特殊文字をエンコードする必要があります。
以下のURLで試してみてくださいね。
https://line.worksmobile.com/message/send?version=18&message=A%3FB%26C&emailList=sample@accountId
2021.06.14
업데이트 된 답글입니다.
村上SP 投稿者
早速のコメントありがとうございます!試してみたところできました!感謝です!!
2021.06.14
업데이트 된 답글입니다.
LINE WORKS 公式アカウント
使用するには URL Encode を行う必要があります。
URL Endode 例)
? → %EF%BC%9F
& → %EF%BC%86
2021.06.14
업데이트 된 답글입니다.
村上SP 投稿者
コメントありがとうございます。特殊文字も全角・半角でエンコードが変わるのですね。ありがとうございます!
2021.06.14
업데이트 된 답글입니다.
村上SP 投稿者
(エンコード前)serchfile¶m → (エンコード後)serchfile%26param
ところがデコードされた文字列が serchfile¶m と出力されました。
少し調べたところURLエンコードの「%26para」の部分がPHPでは「¶」となるらしく、ここで行き詰まってしまいました。
何か解決策はありますでしょうか?
2021.06.14
업데이트 된 답글입니다.
LINE WORKS 公式アカウント
<?php
$str = "serchfile¶m";
// URLエンコード
$str = urlencode( $str );
echo $str ."\n";
// URLデコード
$str = urldecode( $str );
echo $str ."\n";
?>
(実行結果)
serchfile%26param
serchfile¶m
ご参考ください。
2021.06.14
업데이트 된 답글입니다.
村上SP 投稿者
コメントありがとうございます。やはり下記URLをグーグルクロームから実行すると「serchfile¶m」とメッセージ作成されてしまいます。
https://line.worksmobile.com/message/send?version=18&message=serchfile%26param&emailList=sample@accountId
2021.06.14
업데이트 된 답글입니다.
村上SP 投稿者
https://line.worksmobile.com/message/send?version=18&message=serchfile%26ampparam&emailList=sample@accountId
【以下、自分の備忘録として残しておきます】
当初のメッセージ「serchfile%26param」をメッセージに入れて実行すると
「serchfile¶m」 といったんは変換されるが 「¶」部分が「¶」を表す文字参照ために最終的に「serchfile¶m」とメッセージ作成される(参照)
そこで当初のメッセージ「serchfile%26param」の%26の後ろにampを追加する。
「serchfile%26ampparam」となり、%26は「&」を表し、直後の「amp」とともに「&」と表現され、これは「&」を表す文字参照となる(参照)
「&」を「&」に変換し直すということ?で解決したようですが、これが正しい対応だったかは分かりません。。
参照:https://ja.wikipedia.org/wiki/%E6%AE%B5%E8%90%BD%E8%A8%98%E5%8F%B7
参照:https://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%B3%E3%83%91%E3%82%B5%E3%83%B3%E3%83%89
2021.06.14
まだ、解決できませんか?
今すぐ実際に使用しているLINE WORKSユーザーに質問してみましょう。