Json Web Token(JWT)的使用

JWT 用于生成token,token里面可以包含用户信息,下面介绍两种php的实现方法 借助 composer 库 composer require firebase/php-jwt 生成token <?php require_once __DIR__ . '/../vendor/autoload.php'; use Firebase\JWT\JWT; $key = 'abc';//app key $payload = [ 'iss' => 'http://example.org', 'aud' => 'http://example.com', 'iat' => ...

docker-compose 快速部署 gitlab 社区版

直接上配置文件 docker-compose.yml version: '3.6' services: gitlab: image: 'gitlab/gitlab-ce:15.3.1-ce.0' hostname: git.cuiwei.net container_name: gitlab restart: always environment: GITLAB_OMNIBUS_CONFIG: | external_url 'https://git.cuiwei.net' ports: - '80:80'...

Redis 应用场景

首先,总结一下这些应用场景,它们不是独立存在的,很多都还是要依赖mysql;甚至项目初期这些都不是第一选择,很多场景mysql也能做,并且更简单 生成唯一的随机数 很多网站的详情页链接都有一个随机数,比如http://www.cuiwei.net/p/1937090613、https://www.zhihu.com/question/48759965、https://segmentfault.com/a/1190000041091095等 通常的做法是:一个code(id,article_id,code,used_time)表,一个article(id,code, ...)表,在添加文章时从c...

php使用yield解决Fatal error: Allowed memory size of 134217728 bytes exhausted

yield生成器允许你 在 foreach 代码块中写代码来迭代一组数据而不需要在内存中创建一个数组。 错误还原 <?php $file = './access.log'; $lines=readfile2($file); foreach($lines as $line){ file_put_contents('access2.log', $line.PHP_EOL, FILE_APPEND); } echo 'ok'.PHP_EOL; //试图读取一个248M的日志文件,将所有行放到一个数组里面并返回 function readFile2($path){ $handle ...

容器化的LNMP环境,如何升级PHP到8.1.9

为什么要容器化 提到docker你可能会想到k8s,想到分布式,想到高并发;那单机服务器,或者开发环境有没有必要上docker呢?我觉得有!以LNMP环境为例 相比传统的LNMP环境搭建,docker有哪些优势? 之前安装LNMP环境你可能会选择yum,或手动编译,或宝塔之类的;我不太喜欢宝塔之类的,因为给它们的权限太大了,如果有漏洞那是很危险的。再说yum和手动编译,这两个你都没法保证一次成功次次成功!!!比如你在本地安装好了,然后你用同样的步骤到服务上安装,有可能会失败,因为系统不一样! docker 成功的解决了上面的问题,就是能做到一次成功次次成功。利用编排工具docker-compo...

Google play 实时开发者通知——一次性购买

若使用通知需要先配置,详见:http://www.cuiwei.net/p/1632593347/ 实时开发者通知 有三种类型 订阅购买 - SubscriptionNotification 一次性购买 - OneTimeProductNotification play管理中心发出的测试消息 - TestNotification 这篇文章只说 TestNotification和OneTimeProductNotification两种 TestNotification 这个没什么好说的,就是你配置完实时开发者通知,在play管理中心发出的测试通知 OneTimeProductNotific...

google play配置实时开发者通知

若要使用 Pub/Sub,您需有一个 Google Cloud 项目。 创建主题 设置权限 添加服务帐号 google-play-developer-notifications@system.gserviceaccount.com,然后授予其 Pub/Sub 发布商的角色。 创建 Pub/Sub 订阅 传送类型选择推送,并提供一个接收post请求的链接,如下 为您的应用启用实时开发者通知 如上,填写完主题名称,就可以点击“发送测试通知”,不出意外上面配置的端点网址就收到了 参考 https://developer.android.com/google/play/billing/ge...

如何切换google play地区?

注册gmail 首先我尝试使用电脑浏览器进行注册,结果提示“此电话号码无法用于进行验证”,无果。 后来我使用我的 Nexus 6 手机注册:设置->帐号->添加帐号->Google->创建帐号,成功注册。 Google play 1 然后,登陆Google play,发现底部只有游戏和应用;接着又试了几个app内购,发现不能内购 设置美国地址 知道被锁区了,需要假装在美国 访问链接,添加一个美国地址,并设置为法定地址 Google play 2 设置完美国地址,再打开Google play,找到设置->帐号和设备偏好设置->国家/地区和个人资料,会看到美国,点击选择即可

Android Studio多渠道打包之productFlavors

我的app目前有两个渠道,Google play和官网,两者最大的差异是Google play对接了内购。所以需要有个方法能把两者区分开来,只有Google play渠道才显示内购相关的界面。这个方法就是打渠道包 配置productFlavors 修改AndroidManifest.xml <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="net.cuiwei.voice"> <application android:theme="@style/AppT...

使用服务账号请求Google Play Developer API

Google Play 虽然提供了纯客户端的对接方案,但是官方也更推荐将敏感逻辑移至后端 Google Play Developer API 是一种服务器到服务器 API,与 Android 平台上的 Google Play 结算库相辅相成。此 API 提供了 Google Play 结算库中未提供的功能,如安全地验证购买交易以及为用户办理退款。 配置 Google Play Developer API 若要使用 Google Play Developer API,您需有一个 Google Cloud 项目。 关联Google Cloud项目 如上图,你可以选择关联现有项目,也可以选择创建新...