問題タブ [url-encoding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
9726 参照

html - MS Access で HTML エンコードされたテキストをデコードする方法

次のような HTML エンコードされた文字列を含む MS Access 2003 のテーブル フィールドがあります。

MS Access を使用して、これを「通常の文字列」にデコードするにはどうすればよいですか?

前もって感謝します。


ここに私がこれまでに持っているものがあります。ここで提供されているVbコードを使用して(ところで、FF 3.5やChrome 2からではなく、IE7からのみそのページを開くことができました)、次の関数を書きました:

これで、255 までの文字の 10 進値を指定すると機能します。たとえば、次のように実行します。

「無効なプロシージャ コールまたは引数」で失敗します。この参照によると、MS Access はデフォルトで ISOlat1 標準のみをサポートしていると思います。ただし、ISOgrk3 である 913 を超える 10 進数値を持つ Unicode 文字を変換する必要があります。

どうすればそれを達成できるか知っている人はいますか?

再度、感謝します。

0 投票する
2 に答える
1157 参照

asp.net - Asp.net: パス エンコーディング

ディレクトリ内のコンテンツを読み取って作成した画像ギャラリーがあります。ファイル名に「+」が含まれていると、すぐに問題に気付きました。「glas + door.jpg」みたいに壊れる。だから私はそれがエンコーディングの問題だと思った.それは「+」記号だけだったので、「+」を「%2b」に置き換えると問題が解決すると思った. ローカルでは問題は修正されましたが、ホストにアップロードしたときに、「+」記号を「%2b」に置き換えてもうまくいかないことに気付きました。

そこで、ASP.NET のエンコーディングの可能性を調べ始めました。Server.UrlEncodeとを見つけましServer.UrlPathEncodeた。これにより、以前は機能していた画像が機能しなくなるなど、さまざまな結果が得られました。

では、パスをエンコードする正しい方法は何ですか?また、置換の「トリック」が PC では機能するのに、ホスティング環境では機能しないのはなぜですか?

この関数は、特定のディレクトリからGetImages()jpg、gif、および png を取得します。FileInfo必要に応じて、コードのその部分も投稿できます。

それが役立つ場合は、ここで画像がどのように壊れているかを確認できます。とありReplace("+", "%2b")ます。

前もって感謝します。

0 投票する
1 に答える
5601 参照

c# - Response.RedirectはURLエンコードを無視することがあります

私が現在構築しているWebサイトでは、サイトの一部を通過するフローを維持するために、多数の動的リダイレクトが必要です。

私は現在、これを実現するためにresponse.redirectを使用しています。リダイレクトURLは、さまざまなボタンのpostbackメソッドのコードビハインドで動的に生成されます。

これは95%のケースで問題ありませんが、URLがひどく壊れていることがあることに気づいています。

あるケースでは、パラメータの1つにアンパサンドが含まれていることがあるため、URLはURLEncodedですが、リダイレクトはこれを無視し、エンコードされていないバージョンにリダイレクトします。

つまり、「page.aspx?qs = first%26second&qs = 2&qs = 3」は、「page.aspx?qs = first&second&qs = 2&qs=3」にリダイレクトされます。

発生するもう1つのケースは、応答からアンパサンドが完全に取り除かれ、頻繁にクラッシュすることです。

つまり、「page.aspx?qs = 1&qs = 2&qs =3」は「page.aspx?qs = 1qs = 2qs=3」にリダイレクトされます

これらのシナリオのいずれかが発生する可能性がある理由を誰かが知っていますか?

解決済み

申し訳ありませんが、これは私自身の愚かさによるもので、管理者から非管理者にリダイレクトし(尋ねないでください)、数ページで&sを元に戻さなかったりURLエンコードを再度行ったりしませんでした。

(facepalm)

0 投票する
1 に答える
12238 参照

java - REST パス パラメーターのエンコード/デコード

サポートを支援している Web アプリの設計上の欠陥を回避する最善の方法を見つけようとしています。サービスの一部は、パラメーター (「myparam」) を .jsp ページに渡します。次に、パス パラメーターとして myparam を含む REST サービスを呼び出します。設計上の欠陥は、myparam が自由なテキストである可能性があるため、フォーム パラメーターとして渡す必要があることです。ただし、.jsp の最後には他の関係者が関与しているため、実装を変更することはできません。

私の解決策は、16 進エンコーディングを使用して myparam をエンコードすることでした (REST の org.restlet 実装がパス パラメータで見たくない "%" などになるため、url エンコーディングだけでは機能しません)。Apache コーデック ライブラリを使用すると、次のようなものがあります。

オプション 1 (16 進数のみ):

これは私たちの目的のために機能します。私が本当にやりたかったのは、すべての可能性をカバーできるように、URL と 16 進数のエンコードを組み合わせることでした。

オプション 2 (16 進数 + URL デコード):

パラメータの準備:

デコード (REST):

2 つの質問があります。

  1. 2番目のオプションが機能しないのはなぜですか? (d で文字列を URL デコードしようとするたびに) java.lang.IllegalArgumentException が発生します)。http://ostermiller.org/calc/encode.htmlで、パラメータ値の二重エンコードとデコードを問題なくテストしました。

  2. RESTでパスパラメータをエンコードするより良い方法はありますか?

0 投票する
2 に答える
832 参照

jquery - jQuery.postとエンコーディング

Webページにフォームがあり、ユーザーは任意のhtmlを入力できます。彼が[送信]をクリックすると、jQuery.post()を使用してAJAX経由でコンテンツをWebサーバーに送信します。

しかし、特定のHTMLについては、サーバーからこの応答を受け取っています

投稿を変更して取得しようとしましたが、それでも同じ問題に直面しています。誰かが問題の原因を知っていますか、それを修正する方法を教えてください。ありがとう!

編集:

jQueryよりもサーバーの方が問題のようです。以前、nanoHTTPDサーバーを使用していましたが、応答としてBADREQUESTが返されていました。同じリクエストをApacheに送信しようとしましたが、機能しているようです。

0 投票する
4 に答える
817947 参照

url - スペース文字をエンコードするURL:+または%20?

URLのスペースは+いつにエンコードされ、いつエンコードされ%20ますか?

0 投票する
13 に答える
114163 参照

php - 文字列がPHPでURLエンコードされているかどうかをテストします

文字列がURLエンコードされているかどうかをテストするにはどうすればよいですか?

次のアプローチのどれが良いですか?

  • 文字列を検索して、エンコードされる文字とエンコードされない文字を検索します。文字が存在する場合は、エンコードされていないか、または
  • 私が作ったこのようなものを使用してください:

上記のコードは機能しますが、次の例のように、文字列が二重にエンコードされている場合は機能しません。

  • $t = "Hello%2BWorld%2B%253E%2Bhow%2Bare%2Byou%253F";
  • $t = "Hello+World%2B%253E%2Bhow%2Bare%2Byou%253F";
0 投票する
1 に答える
2895 参照

c++ - mfc c++ に URL エンコード用の API はありますか?

次のコードを使用しています。

:"+++" などの特殊記号は URL エンコードを行う必要があり、URL エンコードを行わないと +++ はスペースに変換されます。

コンバーターが必要です。

C++ でこれを行うための API はありますか? 自分で実装すると、全体の状況を考慮に入れることができないかもしれません。そして、コードを制御することはできません。

誰でも助けることができますか?

どうもありがとう!

0 投票する
1 に答える
1354 参照

url - パーセントでエンコードされた UTF-8 から Ascii(8 ビット) への変換

URL を読んでいると、パーセントでエンコードされた文字が含まれていることがよくあります。

例: %C3%A9 は実際には é です。

http://www.microsystools.com/products/sitemap-generator/faq/character-percentage-url-encoding/によると、8 ビット ASCII (128-255) の上半分の文字は UTF-8 としてエンコードされます。の場合、それらのバイトは 16 進数として保存されます。ここで、URL を取得すると、%HEX が 8 ビット ascii として再エンコードされているため、それらを実際の 8 ビット ascii に変換する必要があります。使用できる関数/ライブラリはありますか、そうでなければ、どのように変換しますか?

C/C++ を使用しています。