--openresty
local redis=require "resty.redis";
local json=require "cjson";
local red=redis:new();
red:set_timeout(1000);
local ok,err=red:connect("127.0.0.1", 6379);
if not ok then
ngx.say(json.encode({msg="failed to connect redis"}));
return;
end
local res, err = red:get("rasp_req");
if not res then
ngx.say(json.encode({msg=err}));
return
end
if res == ngx.null then
ngx.say(json.encode({msg='res null'}));
return
end
ngx.say(res);
local ok,err=red:close();
--raspiberry
local redis=require "resty.redis";
local json = require "cjson";
local red=redis:new();
red:set_timeout(1000);
local ok,err=red:connect("127.0.0.1", 6379);
if not ok then
ngx.log("failed to connect redis ",err);
return;
end
local rasp_auth = ngx.req.get_headers()["RaspAuth"];
if rasp_auth == nil or rasp_auth ~= "willku" then
ngx.say(json.encode({msg='auth fail'}));
return
end
local rasp_ts = ngx.req.get_headers()["RaspTs"];
local rasp_addr = ngx.req.get_headers()["RaspAddr"];
local rasp_ip = ngx.var.remote_addr;
local rasp_req = {RaspTs=rasp_ts,RaspAddr=rasp_addr,RaspIp=rasp_ip};
rasp_req = json.encode(rasp_req);
local ans, err = red:set("rasp_req", rasp_req);
if not ans then
ngx.say(json.encode({msg=err}));
return
end
ngx.say(rasp_req);
local ok,err=red:close();
#!/bin/bash
curl https://lemme.coderr.cn/raspset -H "RaspAuth:willku" -H "RaspTs:`date +%Y%m%d-%H:%M:%S`" -H "RaspAddr:`ip addr |grep 'inet\b'|awk '{print $2}'|xargs echo|sed -r 's@ @|@g'`"
备份地址: 【raspiberry上报心跳】