Как внешний счетчик получить уникальных посетителей? - PullRequest
1 голос
/ 22 апреля 2010

Как внешний счетчик отслеживает уникальных посетителей через изображение
Я также хотел бы получить Referrer, если это возможно.
что-то вроде img = "http://www.somecounterdomain.com/count.php?page=83599"
я использую ASP.NET, c #
я знаю, что пользователь может "обмануть", но хотел бы сделать эту возможность минимальной.
дополнительная трудность состоит в том, что я должен отследить внешний сервер и не могу реализовать код на C #.
то, что я могу, это только реализовать встречное воображение или что-то подобное. Я пытаюсь использовать сгенерированное изображение. спасибо за ответы.

Ответы [ 2 ]

1 голос
/ 22 апреля 2010

В основном вам нужно следующее.

1- Создайте .ashx или .aspx. Предполагая, что вы используете .aspx и называете его StatServer.aspx, функция Page_Load будет считывать строку запроса и записывать данные в базу данных, вы увидите строку запроса на шаге 2. Если вы хотите, вы можете вернуть изображение, которое может быть оказаны. Какой-то грубый код будет выглядеть примерно так.

<pre> private void Page_Load(object sender, EventArgs e) { WriteQueryStringInformationToDB(Request.QueryString);</p> <pre><code>Image image = LoadYourImageHere(); using (MemoryStream stream = new MemoryStream()) { base.Response.Clear(); base.Response.ContentType = "image/png"; image.Save(stream, ImageFormat.Png); stream.WriteTo(base.Response.OutputStream); base.Response.End(); }

}

2- Это магия, вы создаете небольшой файл .js. В этом файле у вас есть функция, позволяющая вызывать ее mystats (), которая, по сути, будет собирать информацию на стороне клиента и вызывать URL-адрес, содержащий страницу, созданную на шаге 1. Информация на стороне клиента, такая как размер экрана, реферер и т. Д. передал строку запроса. Одна важная вещь, которую нужно включить в функцию - это идентификатор, который указывает, какой счетчик вы обновляете, чтобы вы могли использовать его на нескольких сайтах. Очень простой .js может выглядеть примерно так. (Примечание проверено и т.д ...:))

<pre> function mystats(id) { // Base URL including the ID of the counter var url="http://yourdomainorservername/statserver.aspx?id="+id;</p> <pre><code>// Add the referer to the url querystring url += "&r=" + escape(document.referrer); // Add screen width + height url += "&w=" + screen.width + "&h=" + screen.height; document.write('<img src="'+url+'" border=0 alt="Site statistics">');

}

3- На веб-страницах, к которым вы хотите применить счетчик, вы добавляете блок скрипта, который включает в себя файл .js с вашего сервера и вызывает функцию mystats из тега img, что заставляет код js собирать информация и отправить запрос на ваш сервер, который, в свою очередь, обновляет базу данных и возвращает поток изображений для отображения.

0 голосов
/ 22 апреля 2010

Получить «реферера» легко, и для подсчета уникальных посетителей вам необходимо установить / проверить файлы cookie.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...