PHP で Web サービスを作成する際の検証の問題を解決するにはどうすればよいですか?
いくつかの情報を確認したところ、Web サービスのメソッドを呼び出すたびに顧客確認情報を添付する必要があるようですが、ログインした後は、再度顧客確認情報を提供する必要はありません。セッション中に?
ディスカッションに返信(解決策)
ID をセッション内に保持します
それは Web サービスを提供する側が決定します
それだけではありません!たとえば、基本的な認証を使用してブラウザでアクセスすると、認証ボックスが表示され、認証に合格すると、同じプロセスでアクセス時に再度ボックスが表示されなくなります。また。
私の問題は、curl が Web サービスをリクエストするときに、呼び出しを完了するために毎回検証情報を提供する必要があるように見えることです。 1 回限りの検証ソリューションはありますか?
Cookie をチェックして、HTTP ヘッダーに id のような値があるかどうかを確認します。この値は、リクエストするたびにサーバーに送信する必要があります。
Cookie をチェックして、HTTP ヘッダーに id のような値があるかどうかを確認します。毎回 この値はリクエストごとにサーバーに送信する必要があります
このアイデアはまだ完成していません
あなたはブラウザの検証について話しています
パスワード: $_SERVER['PHP_AUTH_PW']
参考:http://php.net/manual/en/features.http-auth.php
function authenticate() { header('WWW-Authenticate: Basic realm=""'); header('HTTP/1.0 401 Unauthorized'); echo "You must enter a valid login ID and password to access this resource\n"; exit;}if (addslashes($_SERVER['PHP_AUTH_USER'])!= 'adminname' || addslashes($_SERVER['PHP_AUTH_PW'])!= 'adminadmin') { header('WWW-Authenticate: Basic realm=""'); header('HTTP/1.0 401 Unauthorized'); echo "对不起,无权进入! user=".$_SERVER['PHP_AUTH_USER']."password=".$_SERVER['PHP_AUTH_PW']; //后面这半句我是为了测试而加上去的;}else{ echo "进入! user=".$_SERVER['PHP_AUTH_USER']."password=".$_SERVER['PHP_AUTH_PW']; //后面这半句我是为了测试而加上去的; echo "<p>Welcome: {$_SERVER['PHP_AUTH_USER']}<br />";// echo "Old: {$_REQUEST['OldAuth']}";// echo "<form action='' METHOD='post'>\n";// echo "<input type='hidden' name='SeenBefore' value='1' />\n";// echo "<input type='hidden' name='OldAuth' value='{$_SERVER['PHP_AUTH_USER']}' />\n";// echo "<input type='submit' value='Re authenticate' />\n";// echo "</form></p>\n"; echo date('h:i:s') . "<br />"; //暂停 10 秒 sleep(10); //重新开始 echo date('h:i:s'); header('WWW-Authenticate: Basic realm=""'); header('HTTP/1.0 401 Unauthorized'); }//可以直接使用试试看是不是你想要的结果
ブラウザの検証について話しています
ユーザー: $_SERVER['PHP_AUTH_USER'] パスワード: $_SERVER[' PHP_AUTH_PW ']
参考: http://php.net/manual/en/features.http-auth.php
おそらく私が望むものではありません。 2 つの質問をしたいと思います:
1. オープン Web サービスの検証メカニズムは何ですか?たとえば、キーは 1 種類であると言いましたが、http 基本検証も 1 種類です。他にはどのような方法がありますか?
2. この目的のためにどのような検証メカニズムがあるのか知りたいです: PHP で Web サービスを呼び出すときに、最初のリクエストでのみ検証情報を送信する必要があり、その後の呼び出しでは検証情報を送信する必要がないという検証メカニズムはありますか?再確認 -- 通常のページ閲覧のプロセスと同様に、ログイン情報を一度入力した後は、タイムアウトしない限り、この Web サイトの他のページにアクセスするために再度ログインする必要はありません。
7 階の ihefe からの返信を引用:
ブラウザの検証について話しています
ユーザー: $_SERVER['PHP_AUTH_USER']
パスワード: $_SERVER['PHP_AUTH_PW']
参照: http://php. net/manual/en/features.http-auth.php
おそらく私が望むものではありません。 2 つの質問をしたいと思います:
1. オープン Web サービスの検証メカニズムは何ですか?ということで...
これは一度だけ検証されましたが、私が提供したコードは試しましたか?最後の
echo date('h:i:s');
header('WWW-Authenticate: Basic realm=""');
も削除します。これはあなたが言及したhttpの基本的な検証です
myservice.php
myproxy.php
myclient.php
ユーザーは、myclient.php (または他の場所) を介して myproxy.php に直接アクセスし、myproxy.php で Cookie とともに Curl を使用できます。
どう思いますか?
lz が言ったことは、リクエストを送信すると、サーバー側でセッションが確立され、クライアントに SID を送信して記録できます。 Cookie 内の SID が期限切れでない限り、検証情報を再度送信する必要はありません。セッションはこのメカニズムを提供します。
lz が言ったことは、リクエストを送信すると、サーバー側でセッションが確立され、クライアントに SID が送信されます。有効期限が切れていない場合は、検証情報を繰り返し送信する必要はありません。セッションはこのメカニズムを提供します。
しかし、セッション メカニズムは Web サービスにどのように適用されるのでしょうか?
セッション内で ID を保持します
まだ十分に明確ではありませんが、「検証がカールプロキシを通過する方法」について私が述べたことと何か違いますか?
毎回パスワードを渡す必要はありません。これにはセキュリティ上のリスクがあります。
残念ながら、PHP は完璧ではありません。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











多くの場合、キーワードと追跡パラメーターで散らかった長いURLは、訪問者を阻止できます。 URL短縮スクリプトはソリューションを提供し、ソーシャルメディアやその他のプラットフォームに最適な簡潔なリンクを作成します。 これらのスクリプトは、個々のWebサイトにとって価値があります

2012年のFacebookによる有名な買収に続いて、Instagramはサードパーティの使用のために2セットのAPIを採用しました。これらはInstagramグラフAPIとInstagram Basic Display APIです。

Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

これは、LaravelバックエンドとのReactアプリケーションの構築に関するシリーズの2番目と最終部分です。シリーズの最初の部分では、基本的な製品上場アプリケーションのためにLaravelを使用してRESTFUL APIを作成しました。このチュートリアルでは、開発者になります

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

2025 PHP Landscape Surveyは、現在のPHP開発動向を調査しています。 開発者や企業に洞察を提供することを目的とした、フレームワークの使用、展開方法、および課題を調査します。 この調査では、現代のPHP Versioの成長が予想されています
