2020年了,居然还有人在用asp

事件起因

近日,一个风和日丽的上午,忽然接到老大安排的一个任务:给一个asp的小项目添加判断文件是否存在,如存在就跳转显示的功能

嗯...是的,你没看错,不是php、也不是asp.net,就是asp,可能有些年轻的小伙伴们都不知道asp是啥了,毕竟懂ASP开发的应该都是7080后了吧~~ ̄▽ ̄

下面给大家xue微科普下:

ASP是Active Server Page的缩写,意为“活动服务器网页”。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是.asp,常用于各种动态网站中。ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或web应用程序。ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。

百度百科

以上来自百度百科,简单的说ASP就是微软很久之前开发的一个曾经很流行web脚本应用,但因为计算机发展太快,已经不能满足现代高并发,大数据量的需求了,所以现在基本已经没落了。

那么,重点来了!为啥我们还在用呢?

领导的心思怎么能是我们想问就能问的,所以只能脑补下,领导可能是这么想的:

  • 这样能显示出来我们的公司历史比较久远(06年)!

  • 可能当时只会asp....

    扫描二维码关注公众号,回复: 12071846 查看本文章

额...偏题了,言归正传,开始干活!

关键词ERR_INVALID_REDIRECT

这功能随意写个小函数不就行了么?这有什么难度,虽然咱asp是个野路子,但还不是小case么

三下五除二,搞定!代码如下:

Function CheckFile(FilePath)    Dim fso    FilePath=Server.MapPath(FilePath)    Set fso = Server.CreateObject("Scripting.FileSystemObject")    If fso.FileExists(FilePath) then        CheckFile = True    Else        CheckFile = False    End if    Set fso = nothingEnd Function

兴冲冲就加了个判断代码,开始测试

dim filepathsfilepaths="/a/"&id&".htm"
if CheckFile(filepaths) thenResponse.Redirect "http://test.jb51.net"&filepathsResponse.Endend if

这不就实现了吗?正在得意时,没想到浏览器童鞋直接给泼了盆冷水

额( ̄□ ̄;),大意了,不敢耽误,赶紧调试下

打开IIS中asp的调试,将错误返回至浏览器,刷新浏览器,结果依然让我惊喜

这是什么鬼,我特么。。。(以下省略十万八千字)好了,提醒自己认真点,继续调试,一顿操作之后

行吧行吧,野路子果然是个野路子,还是不行,我是解决不了了,总有人能解决,还是向老大请教下,该问就问,这是个学习的好习惯。

老大老大,帮忙看看这是啥情况,我感觉代码没写错呢。

代码和截图打包给发过去,10秒后,老大回复:你用谷歌浏览器调试!

不敢耽误,立马打开谷歌调试,果然,不一样了...

关键词ERR_INVALID_REDIRECT,明显是跳转地址有问题,输出下

if CheckFile(filepaths) thenResponse.Write filepathsResponse.EndResponse.Redirect "http://test.jb51.net"&filepathsResponse.Endend if

咋输出绝对路径了呢?CheckFile函数的问题于是开始搜索各种解决办法,正抓头呢,老大回复:“找到原因了吧,你这排错能力有点差啊。

赶紧老实交代:“找到出错的地方了,但不知道为啥会出错。”老大二话不说,给发来个网址:https://www.jb51.net/article/1339.htm

核心内容如下图:

ByVal是传递值 源数据不会被修改,你可以把这个值当作自己的局部变量来使用;

根据提示,成功将CheckFile代码修改为​​​​​​​

Function CheckFile(ByVal FilePath)    Dim fso    FilePath=Server.MapPath(FilePath)    Set fso = Server.CreateObject("Scripting.FileSystemObject")    If fso.FileExists(FilePath) then        CheckFile = True    Else        CheckFile = False    End if    Set fso = nothingEnd Function

测试,完美解决问题。

自我反省

笔者这野路子asp缺乏对细节知识的掌握,简单的一个小错误,半天都没发现问题所在,学习语言还是需要系统的学习方能掌握的比较全面。好了,不说了,我要补习去了~

补充:

扫描二维码,后台回复【777】获取你想要的书籍

扫描二维码,后台回复【特效】获取2020最酷特效

扫描二维码,后台回复【鸿蒙】官方开发文档、开源项目地址

扫描二维码,后台回复【速查表】,更多精彩等你来发现

回复【VUE】,获取最新vue学习资料

微信搜索【程序员零距离】,回复以上关键词,获取媛媛前端学习路上收藏的珍贵资料,后续也会陆续更新实战文章教程,和大家一起共同进步,一起提升计算机基础知识和前端技术水平!

点击查看:web前端入门必读书籍

小小建议:

作为一个过来人吧,曾将也犹豫过要不要学习前端或者其他新鲜事物,因此错过了很多机会,其实当你不能决定自己未来该干什么的时候,不能确定自己现在的这份职业是否能有更好的发展的话,那么就不要再犹豫,坚持学下去就对了,不要问为什么?当你掌握了一门专业,你就会明白媛媛为什么这么说了。

只有自己具备足够能力的同时,对自己的未来才有更多的选择权利!

猜你喜欢

转载自blog.csdn.net/webqdyy/article/details/109175798