统计
  • 建站日期:2022-01-17
  • 文章总数:3890 篇
  • 评论总数:11572条
  • 分类总数:43 个
  • 最后更新:今天

有道云笔记永久直链解析接口分享

首页 综合教程 正文
广告
广告
广告
广告

有道云笔记是一款广受欢迎的云笔记工具,可以将笔记保存在云端,随时随地进行查看和编辑。但是,在使用有道云笔记时,用户发现其文件下载直链为临时链接,仅在一定时间内有效,不便于长期使用。因此,有道云笔记永久直链解析接口应运而生。

调用地址

api.php/?url=有道云笔记文件分享链接&json=true

Type参数详解

url:有道云笔记文件分享地址(支持短链接)

json:非必须,是否返回 json 格式

<?php
// 验证请求是否合法,防止恶意请求
if ($_SERVER['REQUEST_METHOD'] !== 'GET') {
    http_response_code(400);
    echo json_encode(['error' => 'Invalid request method']);
    exit;
}

// 获取传入的链接参数
if (!isset($_GET['url'])) {
    http_response_code(400);
    echo json_encode(['error' => 'Missing url parameter']);
    exit;
}

$url = $_GET['url'];

$json = isset($_GET['json']) && $_GET['json'] == 'ture';

// 获取跳转后的链接
function getRedirectUrl($url) {
    $curl = curl_init();
    curl_setopt_array($curl, [
        CURLOPT_URL => $url,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_FOLLOWLOCATION => true,
        CURLOPT_NOBODY => true, // 只获取响应头,不获取响应体
        CURLOPT_HEADER => true, // 将响应头包含在输出中
        CURLOPT_CONNECTTIMEOUT => 5, // 设置连接超时时间为5秒
        CURLOPT_TIMEOUT => 10 // 设置请求超时时间为10秒
    ]);
    curl_exec($curl);
    $redirectUrl = curl_getinfo($curl, CURLINFO_EFFECTIVE_URL);
    curl_close($curl);
    return $redirectUrl;
}

$redirectUrl = getRedirectUrl($url);

// 提取链接中的ID值
$queryString = parse_url($redirectUrl, PHP_URL_QUERY);
parse_str($queryString, $params);
$id = isset($params['id']) ? $params['id'] : '';

if (empty($id)) {
    http_response_code(400);
    echo json_encode(['error' => 'Invalid url parameter']);
    exit;
}

// 构建API请求链接
$apiUrl = "http://note.youdao.com/yws/public/note/{$id}?editorType=0&cstk=cGtjFpHb";

// 发送API请求
$curl = curl_init($apiUrl);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$res = curl_exec($curl);
curl_close($curl);

if (!$res) {
    http_response_code(500);
    echo json_encode(['error' => 'Failed to fetch API response']);
    exit;
}

// 解析API响应
$resArr = json_decode($res, true);
if (!$resArr || !isset($resArr['p'])) {
    // 打印API响应内容进行调试
    var_dump($res);
    http_response_code(500);
    echo json_encode(['error' => 'Invalid API response']);
    exit;
}

// 提取p值
$p = trim($resArr['p'], '/');

// 构建下载链接
$downUrl = "http://note.youdao.com/yws/api/personal/file/{$p}?method=download&inline=true&shareKey={$id}";

// 返回下载链接
if ($json) {
    echo json_encode(['downloadUrl' => $downUrl]);
} else {
    echo $downUrl;
}

版权说明
文章采用: 《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权。
版权声明:本站资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系客服并出示版权证明以便删除!
WordPress主题:轻盈简洁的Argon主题,提升网站效果
« 上一篇 08-29
开源版查看QQ共同好友网站源码
下一篇 » 08-29

发表评论

  • 泡泡
  • 阿呆
  • 阿鲁
  • 蛆音娘
    没有更多评论了