惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Security Blog
Microsoft Security Blog
S
Secure Thoughts
酷 壳 – CoolShell
酷 壳 – CoolShell
S
SegmentFault 最新的问题
WordPress大学
WordPress大学
Hugging Face - Blog
Hugging Face - Blog
人人都是产品经理
人人都是产品经理
美团技术团队
博客园 - 三生石上(FineUI控件)
Jina AI
Jina AI
V
Visual Studio Blog
腾讯CDC
小众软件
小众软件
有赞技术团队
有赞技术团队
博客园 - 聂微东
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
IT之家
IT之家
C
CERT Recently Published Vulnerability Notes
大猫的无限游戏
大猫的无限游戏
T
Threat Research - Cisco Blogs
SecWiki News
SecWiki News
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
宝玉的分享
宝玉的分享
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The Hacker News
The Hacker News
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
T
Troy Hunt's Blog
月光博客
月光博客
雷峰网
雷峰网
T
Tor Project blog
I
Intezer
S
Securelist
罗磊的独立博客
The Register - Security
The Register - Security
H
Hackread – Cybersecurity News, Data Breaches, AI and More
NISL@THU
NISL@THU
Google Online Security Blog
Google Online Security Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Cisco Talos Blog
Cisco Talos Blog
云风的 BLOG
云风的 BLOG
www.infosecurity-magazine.com
www.infosecurity-magazine.com
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
L
Lohrmann on Cybersecurity
The Cloudflare Blog
Attack and Defense Labs
Attack and Defense Labs
P
Privacy International News Feed
W
WeLiveSecurity
Forbes - Security
Forbes - Security
量子位
Last Week in AI
Last Week in AI

Feed of "schmarty/gem-diamond"

issue when using indieauth[dot]com? gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond proxy for profile images gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond gem-diamond
gem-diamond
schmarty · 2025-05-29 · via Feed of "schmarty/gem-diamond"
@ -45,13 +45,15 @@ class Client extends IndieAuthClient {
$authorizationEndpoint = static::discoverAuthorizationEndpoint($url);
if((!$authorizationEndpoint) && (!$fallbackAuthorizationEndpoint)) {
// didn't find an auth endpoint and no fallback passed in. we're stuck.
return self::_errorResponse('missing_authorization_endpoint', 'Could not find your authorization endpoint');
if(!$authorizationEndpoint) {
if(!$fallbackAuthorizationEndpoint) {
// didn't find an auth endpoint and no fallback passed in. we're stuck.
return self::_errorResponse('missing_authorization_endpoint', 'Could not find your authorization endpoint');
} else {
$authorizationEndpoint = $fallbackAuthorizationEndpoint;
}
}
$authorizationEndpoint = $fallbackAuthorizationEndpoint;
$scopes = self::parseNonProfileScopes($scope);
if(count($scopes)) {
$tokenEndpoint = static::discoverTokenEndpoint($url);
@ -85,4 +87,29 @@ class Client extends IndieAuthClient {
return [$authorizationURL, false];
}
/**
* Wrapper to create an ErrorResponse and return the array
* (Duplicated from parent class b/c it's flagged there as private.)
* @return array
*/
private static function _errorResponse($error_code, $description, $debug = null)
{
self::_clearSessionData();
$error = new \IndieAuth\ErrorResponse($error_code, $description, $debug);
return $error->getArray();
}
/**
* Duplicated from parent class b/c it's flagged there as private.
*/
private static function _clearSessionData()
{
unset($_SESSION['indieauth_entered_url']);
unset($_SESSION['indieauth_state']);
unset($_SESSION['indieauth_code_verifier']);
unset($_SESSION['indieauth_authorization_endpoint']);
unset($_SESSION['indieauth_token_endpoint']);
unset($_SESSION['indieauth_issuer']);
}
}