3

ポップアップを1回だけ表示するスクリプトを作成していますが、そのデバイスでは二度と表示されません。

どうすればこれを行うことができますか?

すでにクッキーを使ってみましたが、ユーザーが削除できるので効果が限られています。

もう1つの質問は、デバイスごと、IPアドレスまたはMACアドレスごとに完全に一意なものは何ですか?

4

3 に答える 3

4

唯一の方法はクッキーです。HTTPリクエストでアクセスできるマシンについて100%一意に識別できるものはありません。はい、Cookieはユーザーによって削除される可能性があります。これは意図的なものであり、一緒に生きます。

于 2013-01-23T10:25:23.167 に答える
3

最も明白な2つのオプションは、Cookieまたはアカウントのフラグ(ユーザーが認証されている場合)です。

Cookieは削除できるとおっしゃっていましたが、それでも「このクライアントのために以前に何かをしたことがある」という信頼できる形式です。ユーザーがCookieを削除した場合、ユーザーは自分が何をしているかを知っている可能性が高く、タスクを繰り返す必要があることを期待する必要があります(他のWebサイトへのログインなど)。

ユーザーが認証されている場合(つまり、ユーザーはサイト/サービスにログインする必要があります)、ユーザーに通知が既に表示されていることを示すフラグを簡単に保存できます。

もちろん、この方法の方が信頼性は高くなりますが、認証に依存します。簡単に言うと、取得できるものを取得する必要があります。Cookieは、何らかの形式の一意のデバイスIDを持つための最善の策です。

あなたの他の質問に関して:現実には何もユニークではありません。MACアドレス(とにかくアクセスできない)をスプーフィングしたり、IPを共有したりすることができます。

于 2013-01-23T10:25:55.763 に答える
2

ない。何百万ものインターネットデバイスが192.168.0.2IPとして持っています。ですから、それはユニークではありません。また、MACアドレスはインターネットのものではなく、イーサネットのものです。

外側の問題をより詳細に説明すると、おそらく解決策があります。しかし、それはあなたがすでに言ったことから奇妙に偽物に聞こえます。2つの異なるデバイス上の同じ人がポップアップを2回取得する必要がありますか?しかし、同じマシンに2人がいる場合、最初の人はそれだけを取得する必要がありますか?それを確実にするために邪魔にならないユースケースを想像するのは難しいです。

于 2013-01-23T10:28:59.627 に答える