在SAS存储过程中,有没有办法识别通过ajax调用它的服务器

时间:2017-08-29 13:17:22

标签: ajax sas sas-stored-process

我有一个公共存储过程(STP),我希望能够通过ajax识别哪个页面正在调用它。

STP暂时设置为使用访客帐户运行,因此是公开的。

我想通过在STP变量中插入一个密钥来实现 但是该密钥可以由网址中的用户更改。

是否有一种方法可以识别出这种方法而不会让用户改变它?

也许有一个保留的STP变量告诉请求的来源(比如服务器名称或ip或可识别的东西)?
但我找不到其中任何一个:

_debug
_grafloc
_htcook
_htua
_program
_reqmeth
_rmtaddr
_rmthost
_srvname
_srvport
_url
_userlocale
_username
_version

http://support.sas.com/rnd/itech/doc9/dev_guide/stprocess/reserved.html

1 个答案:

答案 0 :(得分:1)

改变我的回答,因为我以前不正确。您可以获得此信息(通过_htrefer),但它需要configuration change到您的SAS服务器。根据{{​​3}}:

  

_HTREFER:指定引用页面的地址。默认情况下不设置此变量,但可以在params.config中启用   文件。

值得注意的是,没有任何方法可以100%可靠,因为最终用户总是可以操纵他们的请求。