sign

flask @login_required重构

 ̄綄美尐妖づ 提交于 2019-12-02 15:08:53
flask 自带登录视图函数login_required,在前后端不分离情况下,我们可以直接调用官方的,但现在大部分项目都是前后端分离,以接口的形式出现,还有sign验证签名,下面是鄙人小改@login_required 实现登录视图验证和sign验证 源码: (代码不多,短小精悍,源码用到LoginManager模块这里不做详述) def login_required ( func ) : @wraps ( func ) def decorated_view ( * args , ** kwargs ) : if request . method in EXEMPT_METHODS : return func ( * args , ** kwargs ) elif current_app . login_manager . _login_disabled : return func ( * args , ** kwargs ) elif not current_user . is_authenticated : return current_app . login_manager . unauthorized ( ) return func ( * args , ** kwargs ) return decorated_view 在源码基础上进行修饰(其中make

微信支付细节

风格不统一 提交于 2019-12-02 11:35:36
1.配置 //微信支付配置"wx_pay_config" => [ 'appId' => '********', 'mchId' => '**********', 'key' => '**********', 'notify_url' => config('app.notify_url').'wxCallback',], 2.下单   扫码支付 $config = config('dailian.wx_pay_config'); $wPay = new \WxControl($config); $pay_arr = $wPay->unifiedorder('云顶之弈代练', $order['order_num'], 1??$order['price'], 'NATIVE'); if (isset($pay_arr['err_code']) ||$pay_arr['return_code'] != 'SUCCESS' || $pay_arr['result_code'] != 'SUCCESS') return wx_errorReturn(null, -1201, $pay_arr['err_code_des']); $pay_str = $pay_arr['code_url'];   APP支付 $config = config('dailian.wx_pay_config');

1006 Sign In and Sign Out (25 分)

烂漫一生 提交于 2019-12-02 10:40:09
第二个一次AC的甲级题目,繁琐但是不难 At the beginning of every day, the first person who signs in the computer room will unlock the door, and the last one who signs out will lock the door. Given the records of signing in's and out's, you are supposed to find the ones who have unlocked and locked the door on that day. Input Specification: Each input file contains one test case. Each case contains the records for one day. The case starts with a positive integer M, which is the total number of records, followed by M lines, each in the format: ID_number Sign_in_time Sign_out_time where times are given in the

777 支付宝支付

烈酒焚心 提交于 2019-12-02 06:12:39
SDK : ali支付的算法 github中有 简单逻辑往上放 复杂逻辑,放下面,有时间再看 公钥私钥 加密生成url 支付成功通知 sign校验 修改订单状态 该view免除csrf token settings必须大写 公钥私钥 rsa加密 来源: https://www.cnblogs.com/venicid/p/11733936.html

100714G

别说谁变了你拦得住时间么 提交于 2019-12-02 03:17:43
可恶啊这队友又背着我偷偷打比赛 (迷惑发言) 点开发现是个傻逼题,一个小时就施展完了。 题意很简单,在y轴上有一些球,让你求它们的表面积。 一看就直接考虑每个球的贡献吧, 维护一下其他球对这个球造成的影响,然后这个球的贡献就会在[down,up]里,分几种情况求就行了。 不想多分的话可以直接对0取max,比方说down>up这样子。 这队友没板子手写一直wa看得我好心疼啊。 不过 援 圆交手写起来也不难吧。。。(超小声) #include <bits/stdc++.h> using namespace std; typedef double db; const db eps=1e-6; const db pi=acos(-1); int sign(db k){ if (k>eps) return 1; else if (k<-eps) return -1; return 0; } int cmp(db k1,db k2){return sign(k1-k2);} int inmid(db k1,db k2,db k3){return sign(k1-k3)*sign(k2-k3)<=0;}// k3 在 [k1,k2] 内 struct point{ db x,y; point operator + (const point &k1) const{return (point){k1

fastjson把map转成json字符串按字母大小排序

那年仲夏 提交于 2019-12-02 02:39:08
public static void main(String[] args) { HashMap<String, Object> map=new HashMap<String, Object>(); map.put("sign_status", "UNBIND"); map.put("sign_type", "RSB"); map.put("user_id", "2088622919786204"); map.put("gmt_time", "20191023142225"); System.out.println(JSON.toJSONString(map,SerializerFeature.MapSortField)); } 来源: https://www.cnblogs.com/zyf-yxm/p/11726358.html

flutter Android打包

别等时光非礼了梦想. 提交于 2019-12-02 02:32:38
以下内容均是在mac版本电脑上的操作 1、生成签名 //根目录执行以下命令 keytool -genkey -v -keystore ~/sign.jks -keyalg RSA -keysize 2048 -validity 10000 -alias sign //输出 输入密钥库口令: 再次输入新口令: 您的名字与姓氏是什么? [Unknown]: chen 您的组织单位名称是什么? [Unknown]: gwfx 您的组织名称是什么? [Unknown]: no 您所在的城市或区域名称是什么? [Unknown]: 深圳 您所在的省/市/自治区名称是什么? [Unknown]: 广东省 该单位的双字母国家/地区代码是什么? [Unknown]: CN CN=chen, OU=gwfx, O=no, L=深圳, ST=广东省, C=CN是否正确? [否]: y 正在为以下对象生成 2,048 位RSA密钥对和自签名证书 (SHA256withRSA) (有效期为 10,000 天): CN=chen, OU=gwfx, O=no, L=深圳, ST=广东省, C=CN [正在存储/Users/admin/sign.jks] 执行命令 keytool -list -v -keystore sign.jks -alias sign -storepass 123456

Django项目运行端口被占用

孤街浪徒 提交于 2019-12-02 01:45:17
error:以一种访问权限不允许的方式做了一个访问套接字的尝试,是8000端口被其他程序占用了,杀掉占用的程序就可以 (1)查找哪个进程占用了8000端口 `E:\sign_system\guest>netstat -ano|findstr 8000`    (2)找出对应pid的进程详细信息 `E:\sign_system\guest>tasklist |findstr 5516`    (3)杀掉该进程 `E:\sign_system\guest>taskkill /pid 5516 /F`    转自: https://www.cnblogs.com/hanmk/p/8159302.html 来源: https://www.cnblogs.com/yanjiayi098-001/p/11723911.html

非参数检验|Sign test|Wilcoxon signed rank test|Wilcoxon rank sum test|Bootstrapping

只谈情不闲聊 提交于 2019-12-01 23:41:50
非参数检验条件没有参数,因此就没有分布,利用数据等级之间的差距,依次赋值之后再用参数方法测试。将连续型变量转化为离散型变量,即顺序变量。与参数检验相比,正态分布较弱( p 值有可能不显著,浪费信息,比如最大值不管是多大都设定为 10 ,所以很好的抵消 outlier 影响),非正态分布用参数检验就是错误的,但是可以使用非参数检验。 Sign test :符号检验假定分布是二项分布,用中位数替代均值。 得到中位数,然后按照二项分布计算概率值,此时已经脱离原有数据。 注意: 符号秩检验(Wilcoxon signed rank test )针对两个有依赖的样本,使用条件是 1. 独立样本 2. 连续型变量。在相同 rank 的情况下均值作为最后的 rank 值: Sign 和 rank 比较下, Rank 的赋值情况更多,比如 1,2,3,4,5,6 ,而 Sign 只有“ +/- ”,相当于“ 0,1 ”,所以 rank 更有 power 。 秩和检验(Wilcoxon rank sum test),针对两组都是相互独立的数据,数据长度也可能不一样。 比如: 例如: 都在接受区域内,所以接受 H0 。 两组以上的情况: 可重复的: 关于相关性检验: 非参数比参数相关系数更向 1 走。 Bootstrapping :将 6 个数再随机取样,比如取 1000 次,就自然成为一个 1000

使用gpg-agent的SSH功能

别来无恙 提交于 2019-12-01 21:54:06
转载:(https://ddosolitary.github.io/posts/use-the-ssh-feature-of-gpg-agent/) GPG和SSH是非常常用的有非对称加密功能的软件,然而,有没有觉得ssh-agent不太好用,有没有觉得要同时管理两者的密钥很麻烦?实际上,GPG提供的gpg-agent提供了对SSH协议的支持,这个功能可以大大简化密钥的管理工作。 使用GPG管理SSH密钥主要有这些好处: 备份密钥时只要备份一个GPG密钥即可,不用再单独备份SSH密钥 可以使用GPG提供的各种密钥管理功能(如子密钥) gpg-agent可以在需要时自动启动(SSH功能的自动启动需要systemd一类的软件支持,不过Arch Linux的官方gpg包已经提供了相关的systemd配置),而ssh-agent需要手动启动 gpg-agent会自动加载所有被允许用于SSH的密钥,而ssh-agent必须手动使用ssh-add添加密钥,而且每次启动都要手动添加 gpg-agent在密钥被使用时才会询问密码,而且可以设置缓存密码的时间,而ssh-agent在添加密钥时询问密码,只能设置添加的密钥的有效时间,失效后又要手动添加 虽然也可以通过一定的系统配置来获得一部分以上说到的好处,但是有现成的软件提供了这样的功能,显然要方便很多。 那么进入正题。首先要启用gpg