ВсичкиНовоПодобреноОправено
Оправено

Browser отчита реалния статус след преминаване на Cloudflare

Когато защитена от Cloudflare цел връщаше реална страница за геоблокиране (451) след успешно преминаване на проверката, продуктът Browser го отчиташе като 200, тъй като watcher твърдо кодираше статуса на преминаване. Сега watcher чете действителния Document след проверката, така че 200 си остава 200, 451 се показва като 451, а Auto отхвърля грешното съдържание и продължава да търси изход, който наистина отговаря на вашите правила validate.

Оправено

Cmd+K се отваря при нелатински клавиатури

Клавишната комбинация Cmd+K (Ctrl+K) вече отваря командната палитра и модалния прозорец за търсене независимо от клавиатурната подредба. Преди отчитахме въведения символ (к при кирилица), така че потребителите с нелатинска подредба не получаваха нищо. Сега отчитаме физическия клавиш. Това е коригирано в основния сайт, блога и документацията.

Оправено

Auto изразходва пълния си бюджет при студени решавания

Едно студено решаване с Auto може да отнеме няколко минути и заявката вече остава отворена за целия си бюджет. Грешките от всеки слой се връщат като JSON, който вашият клиент може да анализира.

Оправено

Автоматично намаляване до 2 кредита при повтарящи се request-и

Сайтовете с възможност за преизползване на cookie (bet365 беше тестовият случай) задържаха скъпото решаване през браузър на 15 кредита за request, вместо да паднат до евтиното преиграване за 2 кредита след първото решаване. Два бъга: блокировката се задействаше при всякаква временна транспортна грешка, а успешното преиграване в браузъра никога не опресняваше session cookie-тата. И двата са поправени. Повтарящите се request-и към сайт с преизползваемо cookie вече струват 2 кредита след първото решаване, точно както предполага ценообразуването.

Оправено

Ограничен cross-origin достъп до API

Затегнахме cross-origin достъпа, така че само foura.ai да може да извиква API с credentials. Също така подсилихме филтъра за входящи данни на metrics endpoint и премахнахме fallback secret, предназначен само за разработка. Съществуващите интеграции не се променят.

Оправено

Персонализираните правила за validate се отчитат като успех

Ако сте задали validate.status.accept за даден request, системата третира приетия отговор, различен от 200, като пълен успех. Activity все още ги маркираше като неуспешни, което изкривяваше статистиката ви за използване. Резултатите вече следват вашето решение за validate, така че приет от вас статус 403 се показва като успех, а не като App Fail.

Оправено

Страниците извън UTF-8 вече се декодират коректно

Ако сте скрейпвали кирилски, китайски, японски или други страници извън UTF-8 през Single, тялото се връщаше като mojibake. Принудително декодирахме всеки response като UTF-8, преди да видите необработените байтове. Сега четем кодирането (charset) от response (Content-Type, след това <meta charset>, след което fallback към UTF-8) и го декодираме правилно. Благодарим на Александър Кънчев (Sensika) за докладването на това.

Оправено

Засекохме фалшиви proxy-та, които връщат вашия request обратно

Някои proxy-та в мрежата всъщност не препращат вашия request. Те го връщат обратно като plaintext server dump и се опитват да извлекат това, което е вътре. Вече засичаме този модел, преди response да достигне до вашия код, така че Single, Browser и Proxy Finder връщат коректна грешка (или retry) вместо този боклук.

Оправено

Новооткритите proxies достигат по-бързо до pool-а

Отстранихме забавяне, което караше новооткритите proxies да чакат, преди да бъдат валидирани. Proxy Finder вече ги проверява веднага, така че pool-ът остава по-свеж с повече активни, работещи proxies в ротация.

Оправено

Playground cookies следват host-only правилата на RFC 6265

Playground вече проследява правилно атрибута Domain, така че host-only cookies остават на своя хост. Изгледът Parsed ги отбелязва със значка HO, а Raw съвпада с това, което upstream е изпратил.

Оправено

Полетата в Playground съвпадат с реалната API схема

Всяко поле в Playground вече е съобразено със схемата: Browser налага GET, скрива текстовото поле за тялото, а разделът Raw показва точния JSON, който достига до API, плюс curl команда за възпроизвеждане.

Оправено

Unblocker работи от край до край при Single и Proxy Finder

С unblocker: true, Single и Proxy Finder вече пренасят пълния подпис на Unblocker до самия източник, така че anti-bot стените, които го проверяват, да пропуснат заявката.

Оправено

Пасивните предизвикателства на Cloudflare се разрешават в Browser

Някои Cloudflare сайтове връщат 200 OK, но внедряват фонов скрипт, който издава истинската cf_clearance cookie малко по-късно. Преди Browser връщаше страницата преди тази cookie да е пристигнала, оставяйки jar-а празен. Сега Browser изчаква събитието за cookie, така че получавате чиста cf_clearance, която можете да преиграете през Single или Proxy.

Оправено

Линковете за пагинация в блога вече работят

Бутонът „Older“ в блога преди ви връщаше обратно на страница 1. Пагинацията вече се намира на URLs /blog/page/N/ с номерирана навигация, така че действително да можете да разглеждате по-стари публикации. Благодарим на Владимир Петров.

Оправено

Браузърът изпълнява JavaScript при всяка заявка

Браузърът вече обработва всяка заявка чрез JavaScript енджина, така че Cloudflare проверките и страниците с много JS се визуализират според очакванията.