14
クエリの活用
私はあなたがウェブプロキシとして人生の喜びを体験することの試練と苦難について常に考えてきたことを知っています。正直なところ、誰がそうではありませんか?今日、あなたはこの目標(少なくともその一部)の実現を任されています。WebサイトXは、クエリパラメーターを介して機密情報を渡すことを要求する多数のユーザーのために、毎日多くのトラフィックを獲得し、PaaS(明らかにサービスとしてのプロキシを指します)を探しています(ユーザーは愚かです)。あなたのタスクは、リクエストを元の宛先に転送する前に、リクエストからすべての重要なクエリパラメータを削除することです。 入力 RFC3986セクション3の URI文法に従う、整形式の絶対HTTP URL 。 フラグメントがないと仮定できます 角括弧で囲まれたものがオプションを示す簡単な形式の例: http[s]://[user:pass@]host.name.com[:port]/[?param1=value1&param2=value2...] 削除するクエリパラメータのリスト。 出力 入力リストにパラメーターが定義されていない、変更されたHTTP URL。 例 http://example.com/ [foo] > http://example.com/ http://example.com/?foo=bar [] > http://example.com/?foo=bar http://example.com/ [] > http://example.com/ http://example.com/?foo=1&bar=2&baz=3 [foo,baz] > http://example.com/?bar=2 http://example.com/?foo=1&bar=2&baz=3 [foo,bar,baz] > http://example.com/ http://example.com/?foo&bar=2&baz= [foo,baz] > http://example.com/?bar=2 http://example.com/?abc=1&def=2&baz=foo [foo,bar] > http://example.com/?abc=1&def=2&baz=foo http://example.com/?foobar=baz [foo] > http://example.com/?foobar=baz http://foo:foo@foo.com:8080/?foo=1&bar=foo [foo] > http://foo:foo@foo.com:8080/?bar=foo …
19
code-golf