忽如一夜春风来.Lotus高级开发群里涌入了不少新人和猎头。新人们当然不仅是来聊天的,还是带着问题来的。例如:怎么往代理里传参数。
于是习惯授人以渔的我苦口婆心问他们知道什么是BS结构么?告诉他们get,post方法。正婆婆妈妈准备敲下在Domino下面对照的是怎么回事,应该怎么处理时,新人们不耐烦了:这些都知道,我不要听这个,我就要传参数。我怒了,发彪了!后来一想,又何苦呢。大家都不过出来混口饭吃。这个行业环境不好,Domino人才奇缺,项目却不少,公司舍不得花钱,就只能招些价廉未必美。
1、一般执行代理的按钮提交参数。
参照Lotus提交表单,第二种方式,我们可以看到domino表单解析成HTML后,最终都是和ASP,.NET,JAVA解析的一样的Form。那么我们可以像在.net中request.form,request.querystring来在代理中通过doc.Field,doc.Query_String_Decoded来获取。
2、ajax,在js中通过xmlhttp来调代理
一样是Domino的CGI,唯一的一点区别是:
Set thisDoc=ss.DocumentContext
queryStr= Ucase(thisDoc.Query_String_Decoded(0))
然后自己对queryStr做解析吧。
3、代理中调用代理
具体的可以参看:个人收藏Lotuser进阶系列(转)——在两个代理之间传递参数,不过传递的参数是noteid,而不是unid,因此,也可以将参数写到notes文档,参数传完后删除文档。