琳 琅 笔 记 屋 努 力 载 入 中. . .
首页
统计
友链
壁纸
读者墙
推荐
网课助手
在线工具
Search
1
showdoc推送服务设置教程 - Linlang Learning Platform
46 阅读
2
宝塔面板9.1.0开心版[持续跟新]
29 阅读
3
图图对接插件——自动续费因修改了数据库3306端口后连接失败修复
18 阅读
4
iOS系统现新Bug
17 阅读
5
分享一些今年看见的免费asp/php虚拟主机空间
14 阅读
默认分类
新闻吃瓜
新闻资讯
搞笑吃瓜
源码代码
技术教程
软件工具
Android
IOS软件
Windows软件
资源分享
免费资源
付费资源
登录
/
注册
Search
标签搜索
技术教程
软件工具
Windows软件
免费资源
新闻资讯
linux
PHP教程
宝塔
每天60秒
CDN
新闻吃瓜
搞笑吃瓜
资源分享
虚拟主机
磁盘挂载
科普知识
网站源码
29网课
PHP源码
彩虹商城
琳琅
累计撰写
29
篇文章
累计收到
3
条评论
首页
栏目
默认分类
新闻吃瓜
新闻资讯
搞笑吃瓜
源码代码
技术教程
软件工具
Android
IOS软件
Windows软件
资源分享
免费资源
付费资源
页面
统计
友链
壁纸
读者墙
推荐
网课助手
在线工具
搜索到
2
篇与
的结果
2025-01-05
[技术教程]29源码添加showdoc推送功能
前言29源码早已泛滥,网上很多二开玩家给自己的源码添加了各种千奇百怪的功能,已经有技术牛为自己的网站增加了邮箱发信功能,但是部分服务器是不开放465端口的,导致很多用户无法正常使用邮箱发信功能,鄙人有幸在闲暇时间研究了一下用 showdoc推送服务 微信公众号来代替邮箱发信,下面是本人的实现思路 :@(赞一个) 希望有帮到各位站长的地方。数据库准备首先要实现 使用showdoc推送服务 接收消息,用户肯定得设置自己的 专属推送地址 ,因此我没首先要在用户的数据库用户信息表中添加一个用于存储用户 专属推送地址 的字段,我这边使用的字段名称为showdoc,0为未设置订单推送时我们如何判断这个订单已经推送或没有推送呢?如果不判断仅凭订单状态那就会出现一直重复推送的情况,因此我们要在 订单表 中添加一个字段用于判断订单是否已经推送过一次,我这边的字段名称为 showdoc_state ,0为未推送,1为已推送这便是大概的数据库准备工作代码部分showdoc推送功能 官方为我们提供了开发文档,首先我们先去分析文档{collapse}{collapse-item label="请求URL" open}[你的专属推送地址] https://push.showdoc.com.cn/server/api/push/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{/collapse-item}{collapse-item label="请求方式"}GET或者POST都可以{/collapse-item}{collapse-item label="请求参数"}参数名必选类型说明title是string推送的消息标题content是string推送的消息内容。支持文本、markdown和html{/collapse-item}{collapse-item label="返回示例"}{card-describe title="成功返回"} { "error_code": 0, "error_message": "ok" }{/card-describe}{card-describe title="失败返回"} { "error_code": 10103, "error_message": "url或token不正确" }{/card-describe}{/collapse-item}{collapse-item label="返回参数说明"}参数名类型说明error_codeint错误码。为0时表示没有发生错误(即接口请求成功)。非0的时候表示有错误码error_messagestring错误信息{/collapse-item}{/collapse}看完接口请求说明,大致就是通过使用 POST 或者 GET 方法向专属推送链接发送请求,请求参数必须要有 title(标题) 和 content(内容) ,推送成功后返回error_code=0由此当我们将已完成的订单推送给代理时只需要写一个从 order表 中查询出 已完成 并且 showdoc_state为0 的订单再通过该订单查询出下单用户设置的 专属推送地址 将你要发送的订单信息用title(标题)和 content(内容)通过使用POST或者GET的方式访问用户的专属推送地址发送给代理即可总结以上便是29源码添加showdoc推送功能的大致思路,后期动手能力强的小伙伴可以自行DIY,为自己的推送功能加上开关等功能,站长已经完善了所有功能,钱包鼓鼓的小伙伴可以直接找鄙人购买现成的代码 :@(鼓掌) {callout color="#4d83ef"}站长QQ:166305860{/callout}
2025年01月05日
13 阅读
0 评论
1 点赞
2024-08-21
[PHP]创建API
前言在 PHP 开发中创建一个 API 涉及几个步骤,包括定义接口、编写处理逻辑、处理请求和响应、以及进行必要的安全措施。以下是创建一个基本 API 的步骤和示例代码:教程{card-describe title="设计 API"}首先,明确 API 的功能和要求,包括接口的 URL、请求方法(如 GET、POST、PUT、DELETE)、请求参数、响应格式等。{/card-describe}{card-describe title="设置开发环境"}确保你的开发环境配置正确,支持 PHP 和所需的扩展。你可以使用本地服务器(如 XAMPP、WAMP)或远程服务器。{/card-describe}{card-describe title="创建 API 入口文件"}通常,API 的入口文件是一个处理所有请求的 PHP 文件。以下是一个简单的 API 入口文件示例:<?php header("Content-Type: application/json"); // 获取请求的方法 $method = $_SERVER['REQUEST_METHOD']; // 获取请求的路径 $requestUri = $_SERVER['REQUEST_URI']; // 解析请求路径和参数 $path = parse_url($requestUri, PHP_URL_PATH); $path = trim($path, '/'); $parts = explode('/', $path); // 确定要调用的 API 版本和资源 $resource = isset($parts[0]) ? $parts[0] : ''; $id = isset($parts[1]) ? $parts[1] : ''; // 基于请求方法和路径分发请求 switch ($method) { case 'GET': if ($resource == 'items') { if ($id) { getItem($id); } else { getItems(); } } break; case 'POST': if ($resource == 'items') { createItem(); } break; case 'PUT': if ($resource == 'items' && $id) { updateItem($id); } break; case 'DELETE': if ($resource == 'items' && $id) { deleteItem($id); } break; default: header('HTTP/1.1 405 Method Not Allowed'); echo json_encode(['error' => 'Method Not Allowed']); break; } // 获取所有项目的处理函数 function getItems() { // 模拟数据 $items = [ ['id' => 1, 'name' => 'Item 1'], ['id' => 2, 'name' => 'Item 2'] ]; echo json_encode($items); } // 获取单个项目的处理函数 function getItem($id) { // 模拟数据 $items = [ 1 => ['id' => 1, 'name' => 'Item 1'], 2 => ['id' => 2, 'name' => 'Item 2'] ]; if (isset($items[$id])) { echo json_encode($items[$id]); } else { header('HTTP/1.1 404 Not Found'); echo json_encode(['error' => 'Item not found']); } } // 创建新项目的处理函数 function createItem() { $data = json_decode(file_get_contents('php://input'), true); if (isset($data['name'])) { // 模拟创建成功 echo json_encode(['id' => 3, 'name' => $data['name']]); } else { header('HTTP/1.1 400 Bad Request'); echo json_encode(['error' => 'Invalid input']); } } // 更新现有项目的处理函数 function updateItem($id) { $data = json_decode(file_get_contents('php://input'), true); if (isset($data['name'])) { // 模拟更新成功 echo json_encode(['id' => $id, 'name' => $data['name']]); } else { header('HTTP/1.1 400 Bad Request'); echo json_encode(['error' => 'Invalid input']); } } // 删除项目的处理函数 function deleteItem($id) { // 模拟删除成功 echo json_encode(['success' => 'Item deleted']); }{/card-describe}{card-describe title="测试 API"}使用 API 客户端工具(如 Postman)或 curl 命令行工具来测试 API 的各个端点和功能。{/card-describe}{card-describe title="安全性和错误处理"}验证和清理输入 :确保对所有用户输入进行验证和清理,防止 SQL 注入和 XSS 攻击。错误处理:在 API 中实现适当的错误处理机制,返回有用的错误消息和 HTTP 状态码。身份验证和授权:根据需求实现 API 的身份验证和授权(例如,使用 API 密钥、JWT 等)。使用HTTPS :确保 API 通过 HTTPS 提供,以保护数据传输的安全性。{/card-describe}总结创建一个 PHP API 的基本步骤包括定义 API 的需求、编写处理请求的 PHP 代码、处理请求和响应、以及实现安全和错误处理措施。这个示例展示了如何通过处理不同的 HTTP 请求方法来实现一个简单的 API 服务器。根据实际需求,你可以扩展和修改这些功能。
2024年08月21日
4 阅读
0 评论
1 点赞