[解決済み] クエリ文字列を含むURLをTwitterで共有する
2022-05-09 20:26:09
質問内容
メールにTwitterの共有リンクを貼ろうとしています。 電子メールのため、JavaScriptに頼ることができず、"Build Your Own"ツイートボタンを使用する必要があります。
例えば、Googleへのリンクを共有する場合。
<a href="http://www.twitter.com/share?url=http://www.google.com/>Tweet</a>
これは問題なく動作します。 問題は、URLにクエリ文字列がある場合です。
<a href="http://www.twitter.com/share?url=http://mysite.org/foo.htm?bar=123&baz=456">Tweet</a>
クエリ文字列を含むURLは、TwitterのURL短縮サービスであるt.coを混乱させます。これを様々な方法でURLエンコードしてみましたが、何もうまくいきません。 一番近いのは、この方法です。
<a href="http://www.twitter.com/share?url=http://mysite.org/foo.htm%3Fbar%3D123%26baz%3D456">Tweet</a>
ここでは、クエリ文字列のみをエンコードしています。 このようにすると、t.coはURLの短縮に成功しますが、短縮されたリンクをたどると、エンコードされたURLに移動してしまいます。 なるほど
http://mysite.org/foo.htm%3Fbar%3D123%26baz%3D456
が表示され、ブラウザでは次のようなエラーが発生します。
Not Found
要求されたURL /foo.htm?bar=123&baz=456 は、このサーバーで見つかりませんでした。
この問題をどう解決すればいいのか、途方に暮れています。
編集する。 Re: onteria_
URLを全てエンコードしてみたのですが、TweetにURLは表示されません。
どのように解決するのですか?
を使用することで解決できます。
https://twitter.com/intent/tweet
代わりに
http://www.twitter.com/share
. を使用しています。
intent/tweet
関数を使えば、URL全体をURLエンコードするだけで、魅力的に動作します。
関連
-
[解決済み] JavaScriptでクエリ文字列の値を取得するにはどうすればよいですか?
-
[解決済み] Node.js上のExpress.jsでGET(クエリ文字列)変数を取得する方法とは?
-
[解決済み] スペース文字をURLエンコードしています。+ または%20?
-
[解決済み] Javascriptオブジェクトのクエリ文字列エンコーディング
-
[解決済み] クエリ文字列の最大長を教えてください。
-
[解決済み] Twitter画像エンコードに挑戦【終了しました
-
[解決済み] C#でURLのクエリ文字列を作成するには?
-
[解決済み] URLのクエリ文字列パラメータを取得する
-
[解決済み] クエリ文字列を含むURLをTwitterで共有する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン