tschucki / laravel-pr0gramm-api
使用 Pr0gramm API
Requires
- php: ^8.1
- illuminate/contracts: ^10.0
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.9
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^8.0
- pestphp/pest: ^2.0
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
This package is auto-updated.
Last update: 2024-09-13 22:30:44 UTC
README
本包提供了 Pr0gramm API(由 Pr0gramm 提供:API 文档)的 Laravel 封装。本包与 Pr0gramm 无关。我创建它是为了在其它项目上使用。
我会尽力保持本包与 API 保持更新,并随着时间的推移对其进行改进。如果您发现任何错误或有任何建议,请随时提交问题或 PR。
安装
您可以通过 composer 安装此包
composer require tschucki/laravel-pr0gramm-api
您不需要发布任何配置文件。该包将直接运行。您只需登录 Pr0gramm,以获取一些与用户相关的请求。(例如对话或投票)
但如果您想提供您的 pr0gramm 饼干,您可以将其添加到您的 services.php 中。
'pr0gramm' => [ 'cookie' => env('PR0GRAMM_COOKIE'), ]
使用方法
建议您使用外观 Pr0grammApi 来访问 API。
Pr0grammApi::User()->me();
您可以访问 API 的所有端点
- 用户
- 帖子
- 标签
- 评论
- 联系
- 收件箱
- 个人资料
登录到您的账户
要登录到您的账户,您可以使用 login 方法。它将创建一个新的会话并为您存储饼干。之后,您无需在每个请求中提供饼干。当使用非机器人账户时,您必须提供 captcha 和 token 参数(您可以通过 Pr0grammApi::Captcha 获取 captcha 和 token)。
如果您已经在 services.php 中提供了饼干,则可以忽略此操作。您可以在登录时从 Dev-Tools 中复制您的 Cookie,例如。
Pr0grammApi::login('Gamb', 'Quatschtütenwürger25')
从您的账户登出
登出将删除会话和饼干。您必须重新登录才能访问与用户相关的端点。否则,您将收到异常。
Pr0grammApi::logout()
示例
检索当前用户
$currentUser = Pr0grammApi::User()->me();
检索关于用户的信息
$userInfo = Pr0grammApi::User()->info('Gamb');
投票帖子
use Tschucki\Pr0grammApi\Enums\Vote; Pr0grammApi::Post()->vote(1, Vote::UP);
添加评论
// Add comment to post with id 1 Pr0grammApi::Comment()->add(1, 'Das Ablecken von Türknöpfen ist auf anderen Planeten illegal.'); // Add comment to another comment Pr0grammApi::Comment()->add(1, 'Ich bin ne gute Nudel', 22);
从收件箱获取评论
Pr0grammApi::Inbox()->comments();
变更日志
请参阅 CHANGELOG 了解最近更改的更多信息。
贡献
请随意打开 PR 或问题。我会尽快回复。
鸣谢
许可证
MIT 许可证(MIT)。请参阅 许可证文件 了解更多信息。