namespace Friendica\Model\Post;
use Friendica\Core\Logger;
-use Friendica\Core\System;
use Friendica\Database\Database;
use Friendica\Database\DBA;
use Friendica\DI;
* @param int $uriId
* @param string $url
* @param string $size
- * @return string Found link URL + id on success, $url on failture
+ * @return string Found link URL + id on success, $url on failure
*/
public static function getByLink(int $uriId, string $url, string $size = ''): string
{
}
if (!in_array(parse_url($url, PHP_URL_SCHEME), ['http', 'https'])) {
- Logger::info('Bad URL, quitting', ['uri-id' => $uriId, 'url' => $url, 'callstack' => System::callstack(20)]);
+ Logger::info('Bad URL, quitting', ['uri-id' => $uriId, 'url' => $url]);
return $url;
}
{
$timeout = DI::config()->get('system', 'xrd_timeout');
- $curlResult = HTTPSignature::fetchRaw($url, 0, [HttpClientOptions::TIMEOUT => $timeout, HttpClientOptions::ACCEPT_CONTENT => $accept]);
- if (empty($curlResult) || !$curlResult->isSuccess()) {
+ try {
+ $curlResult = HTTPSignature::fetchRaw($url, 0, [HttpClientOptions::TIMEOUT => $timeout, HttpClientOptions::ACCEPT_CONTENT => $accept]);
+ if (empty($curlResult) || !$curlResult->isSuccess()) {
+ return [];
+ }
+ } catch (\Exception $exception) {
+ Logger::notice('Error fetching url', ['url' => $url, 'exception' => $exception]);
return [];
}
$fields = ['mimetype' => $curlResult->getHeader('Content-Type')[0]];