Javascript 如何将数据传递给cron作业并保存它
我想运行一个cron作业,一旦用户进行身份验证,它将获取用户的电子邮件地址并将其传递给cron作业,以发出POST请求,刷新用户的accessToken,从而用户可以保持身份验证。然后作业必须将其发送到客户端,以便客户端可以将其保存为cookie,以便我的chrome扩展可以读取它 routes.py:Javascript 如何将数据传递给cron作业并保存它,javascript,python,flask,cookies,jobs,Javascript,Python,Flask,Cookies,Jobs,我想运行一个cron作业,一旦用户进行身份验证,它将获取用户的电子邮件地址并将其传递给cron作业,以发出POST请求,刷新用户的accessToken,从而用户可以保持身份验证。然后作业必须将其发送到客户端,以便客户端可以将其保存为cookie,以便我的chrome扩展可以读取它 routes.py: def accessTokenRefresher(): user = User.query.filter_by(email=UserEmail).first() thecrede
def accessTokenRefresher():
user = User.query.filter_by(email=UserEmail).first()
thecredentials = {
'client_id': os.getenv('client_id'),
'client_secret':os.getenv('client_secret'),
'refresh_token':user.refresh,
'grant_type': 'refresh_token',
}
req = requests.post(url='https://oauth2.googleapis.com/token', data = thecredentials)
req_ = req.json()
token = req_["access_token"]
print(token)
return render_template('/accounts/token.html',token = token)
scheduler = BackgroundScheduler()
scheduler.add_job(func=accessTokenRefresher, trigger="interval", seconds=10)
scheduler.start()
token.html:
<html>
<h1>{{token}}</h1>
<script type="text/javascript">
function setCookie(name,token) {
console.log('the cookie is ' + token)
var expires = "";
var oldDate = new Date();
var newDateObj = new Date(oldDate.getTime() + 2*60000);
expires = "; expires=" + newDateObj.toUTCString();
document.cookie = name + "=" + (token || "") + expires + "; path=/";
}
setCookie('user_token', '{{token}}')
</script>
</html>
&如果我将电子邮件传递给该功能,它将第一次工作&而不是每小时,永远。因为我不想让用户每次都进行身份验证,而是让cron负责
This typically means that you attempted to use functionality that needed
an active HTTP request. Consult the documentation on testing for
information about how to avoid this problem.