日期:2013-12-29  浏览次数:21035 次

有一个网站A想找别的网站作为代理商,在代理商的页面上插入自己的广告。它提供一个注册页面给代理商,代理商注册后,会得到一个ID,并得到以此ID作为标记的广告代码。

代理商需要做的就只是把这个代码插入自己的网页中就可以了。一旦有人点击这个广告。网站A就要付给代理商money了。

那么,这个技术具体是如何实现的呢?这是别人给我出的一道题目,虽然不难,但是我觉得很有代表性,所以不妨写出来给大家做个参考。


相关知识

1. JavaScript中的document对象。document最常用的方法莫过于write了。document.write(str)可以把str写到浏览器。其实document.write()和respose.write()是很相似的,区别只在于response是asp对象,是从Server向Client写,而document是浏览器对象,是Client本地写。(扯远了 -_-||)

2. <script>标记中有一个src属性,可以通过url来调用脚本。

知道了这些,就可以动手做了。


Agent.htm

这个是代理商的页面。我们需要给代理商一段代码,让他们插入即可(rpwt……)。

<script language="javascript" src="http://localhost/AgentGet/Show.asp?AgentID=1000"></script>

代理商需要做的就这么多了,然后就等着领钱了。(这好事我咋找不着呢……)


Show.asp

既然代码中出现了Show.asp,必然就要写了。其实Show.asp的任务就是输出一段JavaScript给浏览器,当Agent.htm用<script>的src属性调用的时候,这段JavaScript就可以在Agent.htm中执行了。

<%
id = Request("AgentID")
txt = "<a href='http://localhost/AgentGet/GetID.asp?AgentID="
txt = txt & id & "'>"
txt = txt & "<img src='http://www.163design.net/a/y/Pic.jpg'>"
txt = txt & "</a>"
js = "document.write(""" & txt & """);"
Response.write js
%>

这就是Show.asp的全部内容,短吧?我就喜欢简单实用的东东,比如VB啦、C#啦……(又扯到哪里去了…… 0_o)

熟悉ASP的人一眼就看出来了。这个东西就是request到id以后,用document.write()来输出一段javascript,这段javascript其实是一段html,就是显示一个带超链接的图片,并且把id作为链接的一部分。


GetID.asp

最后的东西就是得到ID了。

<%
id = Request("AgentID")
Response.Write "The Agent's ID is " & id
%>

在得到了Agent的ID以后,就可以更新数据库了。最后,Redirect到广告页,就大功告成了。