首页
友情链接
统计分析
4K壁纸
搜索
1
#1031 – TABLE STORAGE ENGINE FOR ” DOESN’T HAVE THIS OPTION解决方法
997 阅读
2
让浏览器不显示 https 页面中 http 请求警报 http-equiv=”Content-Security-Policy” content=”upgrade-insecure-requests”
767 阅读
3
报错代码:ERROR 1227 (42000)-解决办法
574 阅读
4
微信个人商户号养号建议
489 阅读
5
解决移动端position:fixed随软键盘移动的问题
414 阅读
PHP
Mysql
乱七八糟
常用笔记
Linux
Reids
Search
标签搜索
php
千卡云支付
Linux
千卡云
千卡易支付
redis
Nginx
shell
Mysql
JS
支付宝
CentOS
Apache
支付
function
database
fastadmin
phpstorm
快捷键
微信支付
蓝科迪梦
累计撰写
59
篇文章
累计收到
1
条评论
首页
栏目
PHP
Mysql
乱七八糟
常用笔记
Linux
Reids
页面
友情链接
统计分析
4K壁纸
搜索到
59
篇与
的结果
2022-10-27
通过NVM安装node.js
1.下载并安装NVM脚本 curl https://raw.githubusercontent.com/creationix/nvm/v0.13.1/install.sh | bash 2.添加内容 vim ~/.bash_profile export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" 3.生效配置 source ~/.bash_profile 4.安装node版本 nvm install v6.10.2 5.使用版本 nvm use v6.10.2 6.查看版本是否安装成功 node -v 7.安装npm npm install -g cnpm --registry=https://registry.npm.taobao.org 8.安装pm2 cnpm install pm2 -g 9.安装nodejs拓展块 删除 /data/wwwroot/www.abc.com(自己创建的站点)/LiveNewIM/node_modules cd /data/wwwroot/www.abc.com(自己创建的站点)/LiveNewIM rm -rf node_modules --- cnpm install cnpm install md5-node cnpm install node-schedule 10.更新服务器对应目录配置 cd /data/wwwroot/www.abc.com(新建的站点)/LiveNewIM vim config.js 内容如下:'REDISHOST' : 'redis地址''REDISPASS' : 'redis密码''REDISPORT' : '6379''TOKEN' : '1234567''WEBADDRESS': 'http://www.abc.com(自己的域名)/api/public/'vim exposure.js 内容如下:var site='http://www.abc.com(自己的网站域名)'; 11.启动node.js服务 pm2 start s1.js --watch pm2 start exposure.js --watch 12.保存以上pm2设置信息 pm2 save 13.pm2开机自启 pm2 startup
2022年10月27日
247 阅读
0 评论
0 点赞
2022-10-27
让浏览器不显示 https 页面中 http 请求警报 http-equiv=”Content-Security-Policy” content=”upgrade-insecure-requests”
在我们服务器的响应头中加入:header(“Content-Security-Policy: upgrade-insecure-requests”); 或者在页面中加入meta头:<meta http-equiv=”Content-Security-Policy” content=”upgrade-insecure-requests” /> 都可以解决https页面中http请求的报警信息,意思是让 浏览器自动升级请求。 但是需要注意,如果当前没有服务器资源开启https,则会导致资源加载失败。
2022年10月27日
767 阅读
0 评论
1 点赞
2022-10-24
关于支付宝发起转账网关发送转账请求
复制代码 /** * 功能描述: 支付宝转账接口-公钥证书模式 * * @param aliPayConfig 支付宝配置 * @param orderNo 系统订单号 * @param account 收款方帐号 * @param userName 收款方姓名 * @param amount 转账金额 **/ public static boolean transfer(AliPayConfig aliPayConfig, String orderNo, String account, String userName, String amount) throws AlipayApiException { log.info("支付宝转账开始,订单号 = {}", orderNo); //构造client CertAlipayRequest certAlipayRequest = new CertAlipayRequest(); //设置网关地址 certAlipayRequest.setServerUrl(aliPayConfig.getServerUrl()); //设置应用Id certAlipayRequest.setAppId(aliPayConfig.getAppId()); //设置应用私钥 certAlipayRequest.setPrivateKey(aliPayConfig.getPrivateKey()); //设置请求格式,固定值json certAlipayRequest.setFormat(AliPayConfig.FORMAT); //设置字符集 certAlipayRequest.setCharset(AliPayConfig.CHARSET); //设置签名类型 certAlipayRequest.setSignType(AliPayConfig.SIGN_TYPE); //设置应用公钥证书路径 certAlipayRequest.setCertPath(AliPayConfig.APP_CERT_PATH); //设置支付宝公钥证书路径 certAlipayRequest.setAlipayPublicCertPath(AliPayConfig.PUBLIC_CERT_PATH); //设置支付宝根证书路径 certAlipayRequest.setRootCertPath(AliPayConfig.ROOT_CERT_PATH); //构造client AlipayClient alipayClient = new DefaultAlipayClient(certAlipayRequest); AlipayFundTransToaccountTransferRequest request = new AlipayFundTransToaccountTransferRequest(); AlipayFundTransToaccountTransferModel transferModel = new AlipayFundTransToaccountTransferModel(); //自身系统订单号, transferModel.setOutBizNo(orderNo); transferModel.setPayeeType(AliPayConfig.IDENTITY_TYPE); transferModel.setPayeeAccount(account); transferModel.setAmount(amount); transferModel.setPayeeRealName(userName); transferModel.setRemark("提款"); request.setBizModel(transferModel); log.info("支付宝转账请求参数 = {}", JSONObject.toJSON(transferModel)); try { AlipayFundTransToaccountTransferResponse response = alipayClient.certificateExecute(request); if (AliPayConfig.SUCCESS_CODE.equals(response.getCode())) { log.info("转账成功,返回信息{}", JSONObject.toJSON(response)); return true; } else { log.error("转账失败,错误信息 = {}", JSONObject.toJSON(response)); return false; } } catch (AlipayApiException e) { log.error("转账异常,异常信息 = {}", e.getMessage()); return false; } }
2022年10月24日
239 阅读
0 评论
0 点赞
2022-10-24
支付宝网关参数
复制代码 @Component @Data public class AliPayConfig { // 支付宝网关 @Value("${aliPay.serverUrl}") private String serverUrl; //appId @Value("${aliPay.appId}") private String appId; //私钥 @Value("${aliPay.privateKey}") private String privateKey; //参数返回格式,只支持 JSON(固定)。 public static String FORMAT = "json"; //商户生成签名字符串所使用的签名算法类型,目前支持 RSA2 和 RSA,推荐使用 RSA2。 public static String SIGN_TYPE = "RSA2"; // 字符编码格式 public static String CHARSET = "UTF-8"; //转账成功状态码 public static String SUCCESS_CODE = "10000"; //收款方标识类型 ALIPAY_USER_ID:支付宝会员的用户 ID,可通过 获取会员信息 能力获取。ALIPAY_LOGON_ID:支付宝登录号,支持邮箱和手机号格式。 public static String IDENTITY_TYPE = "ALIPAY_LOGONID"; //应用证书路径 public static String APP_CERT_PATH = ClassLoader.getSystemResource("aliPay/appCertPublicKey.crt").getPath(); //公钥证书路径 public static String PUBLIC_CERT_PATH = ClassLoader.getSystemResource("aliPay/alipayCertPublicKey_RSA2.crt").getPath(); //支付宝根证书路径 public static String ROOT_CERT_PATH = ClassLoader.getSystemResource("aliPay/alipayRootCert.crt").getPath();
2022年10月24日
226 阅读
0 评论
0 点赞
2022-10-24
关于支付宝获取私钥和公钥-千卡云
支付宝官网:店家我的商家服务—在页面的下方找到——>签约管理—>找打 移动支付—–>点击下载集成文档—>跳到新的页面,在页面下方—>找到下载开发包,下载移动支付即可。然后解压出来之后一般会得到三个文件夹。 这个时候要打开文件名为: 支付宝钱包支付接口开发包2.0标准版的文件。打开之后有一个Demo 文件。里面会有三个文件 夹:第一个 openssl; 第二个 服务端 Demo,第三个 客户端demo. 这个时候,我们需要关心的是 openssl 文件与 客户端 Demo 的文件。 在第三个Demo文件中有iOS版与Android 版的Demo.但是你要部署运行的时候,会发现不能运行成功。在项目主文件里面这样一段代码: //商户PIDpublic static final String PARTNER = ""; //商户收款账号public static final String SELLER = ""; //商户私钥,pkcs8格式public static final String RSA_PRIVATE = ""; //支付宝公钥public static final String RSA_PUBLIC = ""; 因为这些,都是需要根据商户注册的信息来填写的。所以就算下下载了Demo,也没有用。下面讲的就是如何获取私钥与支付宝公钥。 还记得刚刚我们加压之后的openssl文件嘛?获取私钥与公钥的方法就在里面: 首先打开openssl文件:以下是文件打开顺序: openssl–>bin –> 双击 openssl.exe文件。这个时候会出现一个命令框:(首先要说明的是这个文件是在Windows系统下打开的)要是苹果系统好像不行.接着继续往下说: 打开命令框后:输入第一行命令 ,生成私钥,如下: genrsa -out rsa_private_key.pem 1024 按回车键,接着输入第二行命令,生成公钥: rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem 按回车键,接着输入第三行命令,将RSA私钥转换成PKCS8格式 pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt 执行完这三行命令后,就生成了两个以:.pem 结尾的文件。这就是我们生成的公钥与私钥.文件位置就在: bin 目录下。当然我们打不开这 两个文件。但是我们可以复制一份到桌面,改成Txt文件打开即可。因为我们需要的只是里面的字符串,记住当我们引用这两个长的字符串的时候,需要注意的 是:字符串,不能包括,换行,空格,以及其他误加的字符。所以复制的时候一定要小心。 当然私钥就是我们需要的私钥了,如何获得支付宝公钥呢:回到支付宝首先,首先登录, 一: 点击“查看PID|KEY”,在新打开的页面(https://b.alipay.com/order/pidAndKey.htm ),可查看到签约支付宝账号、合作者身份ID(PID. 二:输入支付密码,查询key、支付宝公钥。 三:上传RSA公钥,在“合作伙伴密钥管理”下,点击“RSA加密”后的“添加密钥”,把自己的公钥复制进去。注意不能有空格,换 行之类的。 四:点击确认上传,若是提示上传成功。则就是成功。 这个时候就可查看支付宝公钥了。 至此,将对应的私钥与公钥填到相应位置我们的Demo 就可一运行了。然后集成到项目中即可。
2022年10月24日
323 阅读
0 评论
0 点赞
2022-10-21
sessionStorage使用
sessionStorage在MDN里的描述是这样的: sessionStorage 属性允许你访问一个 session Storage 对象。 它与 localStorage 相似,不同之处在于 localStorage 里面存储的数据没有过期时间设置,而存储在 sessionStorage 里面的数据在页面会话结束时会被清除。 页面会话在浏览器打开期间一直保持,并且重新加载或恢复页面仍会保持原来的页面会话。 sessionStorage的使用方法是: // 保存数据到sessionStorage sessionStorage.setItem('key', 'value'); // 从sessionStorage获取数据 var data = sessionStorage.getItem('key'); // 从sessionStorage删除保存的数据 sessionStorage.removeItem('key'); // 从sessionStorage删除所有保存的数据 sessionStorage.clear(); sessionStorage的特点是,当用户打开一个标签页,实际上就是建立了一个session会话,在这个标签页里,url发生跳转, sessionStorage实际上还是保存着,并不会消失,当标签页关闭的时候,数据才会消失。
2022年10月21日
295 阅读
0 评论
0 点赞
2022-10-21
Nginx允许跨域访问的配置问题
跨域问题: has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://dev2.lystrong.cn' is therefore not allowed access. 为跨域访问问题,可以在静态资源服务器A 配置允许跨域请求,nginx在配置中对应的location下添加上如下的设置: add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allow-Credentials' 'true'; 重启nginx
2022年10月21日
318 阅读
0 评论
0 点赞
2022-10-08
解决移动端position:fixed随软键盘移动的问题
在安卓手机上面会出现position:fixed固定定位的问题,当用户点击搜索框的时候,手机的虚拟键盘会把固定在底部的div顶到手机虚拟键盘的正上方,查询后发现是虚拟键盘调用时浏览器高度被压缩了,根据这个特性我们可以通过监听浏览器窗口的高度改变元素的定位或者显示隐藏。 var windowInnerHeight = window.innerHeight; //获取当前浏览器窗口高度 $(window).resize(function(){ if(window.innerHeight < windowInnerHeight){ $('定位按钮').hide(); }else{ $('定位按钮').show(); } });
2022年10月08日
414 阅读
0 评论
0 点赞
2022-10-08
解决JSON.stringify在使用循环体内部变量报错的问题
var source = {name:666}; source.o = source; 这里直接用JSON.stringify(source)打印会报错:Converting circular structure to JSON at Object.stringify,正常需要删除对象的循环引用,这种错误的编码方式,但是有时候我们想打印下对象里都有什么,所以就有了一下方式: deepClone = function(source) { if (!source || typeof source !== 'object') { throw new Error('error arguments', 'shallowClone') } var targetObj = this.testArray(source) ? [] : {} let iii = 0; for (var keys in source) { console.log('\r\n'+keys); targetObj[keys] = source[keys]; if(iii >= 50 ){ //防止对象过多死循环 导致栈溢出 break; } iii++; } return targetObj } console.log(deepClone(source));
2022年10月08日
212 阅读
0 评论
0 点赞
2022-09-25
js前端和php后端对url编解码处理方式不一致的问题
问题:php的解码方式是urldecode,前端的编码方式有escape,encodeURI,encodeURIComponent这三种,escape出来的url,php可以正常解析出来,但是escape不支持ES6,其他两种方式php不能解析正确 解决方法一,根据情况转: URI部分用encodeURI,参数部分用encodeURIComponent,这样才是相对完美的编码方式。 比如`https://example.com/?next=abc...`,得到的结果分别是: encodeURI(`https://example.com/?next=abc...`): "https://example.com/?next=abc.com/def&encoding=utf-8" encodeURIComponent(`https://example.com/?next=abc...`): "https%3A%2F%2Fexample.com%2F%3Fnext%3Dabc.com%2Fdef%26encoding%3Dutf-8" encodeURI(https://example.com/?next=${encodeURIComponent('abc.com/def')}&encoding=${encodeURIComponent('utf-8')}): "https://example.com/?next=abc.com%252Fdef&encoding=utf-8" 解决方法二,base64: json_encode()用eval()还原 base64_decode()用base64_encode()还原 解决方法三,最简单的方法,前后端都不使用转义!
2022年09月25日
174 阅读
0 评论
0 点赞
1
...
4
5
6