100% 完璧なソリューションではないかもしれませんが、特定の映画ビジネスの例ではうまくいくはずです。
まず、各ユーザーにユーザー名とパスワードを与えます。
AJAX 呼び出しを行うために、ユーザーは 3 つのことを指定する必要があります。
- ユーザー名
- 希望の映画ID
- API_KEY
これで、API_KEY は以下に基づいて生成されるハッシュ (sha1()
またはmd5()
それらの組み合わせを使用できます) になります。
したがって、AJAX リクエストを行うためにユーザーが行う必要がある操作は次のとおりです。
$username = 'john_smith';
$password = 'abc';
$movie_id = 'Titanic';
$date = date('Y-m-d');
$API_KEY = sha1($password . $movie_id . $date);
AJAX("http://website.com/index.php?user=$user_name&movie=$movie_id&api_key=$API_KEY");
(ユーザーがクライアント側の環境しか持たないと予想される場合は、JavaScript でも同様のことができます。)
あなたの側では、次のようにする必要があります。ユーザー名がわかれば、データベースでパスワードがわかります。リクエストから movie_id を取得します。そして今日の日付は私たち全員が知っています。(タイムゾーンの問題を避けるために、昨日と明日を確認することもできます。)
次に、同じハッシュを生成し、ユーザーが送信した API_KEY と比較します。それらが一致する場合 - すべて良い。
このようにして、1 つの映画に対してのみ有効で、約 1 日で有効期限が切れる固有の AJAX 呼び出しが作成されます。
少なくともビジネス的には、それはかなり効率的なアプローチだと思います。