在splash的http-API中有两个参数 load_args和save_args。这两个参数的说明如下:
save_args:这个参数的作用就是告诉splash服务器,我要缓冲哪些参数在splash服务器的内部缓冲中,然后splash服务器会把参数对应的值做一个sha1的hash值并存储该参数的,之后会将hash值放在响应头中的X-Splash-Saved-Arguments中返回给客户端。
load_args: 这个参数的作用就是问splash有没有该hash值的参数在内部缓冲中;如果有,则依据该hash值将放在内部缓冲中的实际参数值取出,然后处理该请求; 如果没有(其中一个没有),则splash服务器会返回一个状态码为498的响应,该响应就是告诉客户端,我这边没有你发送给我的hash值的对应的参数值,你要给我重新发送一下。
Splash使用LRU缓存来存储值;条目数量有限,每次启动Splash后清除缓存。换句话说,存储不是持久的;客户端应该准备好重新发送参数。
用法:
保存参数:
在发送给splash服务器的请求中要同时有以下两种字段:
参数A: 参数值A
参数B: 参数值B
save_args: [参数A, 参数B]
加载参数:
只需要在发送给splash服务器的请求中有load_args字段即可:
load_args:“参数A=hash(参数A值);参数B=hash(参数B值)”