有没有什么办法可以通过提取访问链接域名之后的文件名来控制访问链接获取到的文本

在企业微信里面创建自建应用的时候,网页授权需要填写可信域名,需要将校验文本下载放置到域名之下,但是这个检验文件有个特点,他的文件名中就包含里面的内容.
因为项目是个 saas 系统,我不太想让每个用户上传校验文件,我就想写个功能,通过访问链接提取出来所需文本直接返回 (无需存在真实的文本), 从而绕过将检验文件放置到服务器的过程

有没有什么办法可以通过提取访问链接域名之后的文件名来控制访问链接获取到的文本
框中的部分就是文本内容

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
最佳答案

我们项目已经实现,可参考: gitee.com/mochat/mochat/blob/maste...

具体代码片段

<?php
/**
     * @RequestMapping(path="/{wxVerifyTxt:WW_verify_[0-9a-zA-Z]{16}\.txt$}", methods="GET")
     * @return null|string ...
     */
    public function handle(): ?string
    {
        $code = null;
        preg_match(
            '/WW_verify_([0-9a-zA-Z]{16})\.txt/',
            $this->request->route('wxVerifyTxt'),
            $code
        );
        isset($code[1]) && $code = $code[1];

        return $code;
    }
3年前 评论
讨论数量: 5
ShiKi

AppServiceProvider 中添加

        $path = \Request::path();
        $explode = explode('.', $path);
        if ( end($explode) == 'txt') {
            echo 123;die;
        }

你根据自己情况再优化一下

3年前 评论

使用 pathinfo() 函数

<?php
$path_parts = pathinfo('/www/htdocs/inc/lib.inc.php');

echo $path_parts['dirname'], "\n";
echo $path_parts['basename'], "\n";
echo $path_parts['extension'], "\n";
echo $path_parts['filename'], "\n";
?>
// /www/htdocs/inc
// lib.inc.php
// php
// lib.inc

具体看:www.php.net/manual/zh/function.pat...

3年前 评论

我们项目已经实现,可参考: gitee.com/mochat/mochat/blob/maste...

具体代码片段

<?php
/**
     * @RequestMapping(path="/{wxVerifyTxt:WW_verify_[0-9a-zA-Z]{16}\.txt$}", methods="GET")
     * @return null|string ...
     */
    public function handle(): ?string
    {
        $code = null;
        preg_match(
            '/WW_verify_([0-9a-zA-Z]{16})\.txt/',
            $this->request->route('wxVerifyTxt'),
            $code
        );
        isset($code[1]) && $code = $code[1];

        return $code;
    }
3年前 评论

file

3年前 评论
maxincai 3年前