Cheery
.:МордератоР:. | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору hukker а чего товарищ не здесь спрашивает? ну, зачем в куках лишнее гонять - есть же storage в хроме http://developer.chrome.com/extensions/storage Цитата: Т.е. при второй и последующих попытках обращения к mysite.com значение ссылки берётся уже из кукисов и всё отрабатывает как надо, хост подменяется. | интересно как, если Код: function getLink() { // смотрим, есть ли у нас в кукисах сохранённый адрес нужной ссылки // Если есть - берём его. В противном случае выполняем запрос к API сервиса chrome.cookies.get({url:'http://api.service.com', name:'newlink'}, function(cook) { if ( ! cook) return setLink(); else return cook.value; }); } | функция getLink ничего не возвращает, возвращает коллбек функция, а не сама getLink ну а не вдаваясь в подробности - почти весь API у хрома - асинхронный (синхронное - "зло"). да, к тому же, у него указано Цитата: // extraInfoSpec ["blocking"] | Цитата: If the optional opt_extraInfoSpec array contains the string 'blocking' (only allowed for specific events), the callback function is handled synchronously. That means that the request is blocked until the callback function returns. In this case, the callback can return a webRequest.BlockingResponse that determines the further life cycle of the request. Depending on the context, this response allows cancelling or redirecting a request (onBeforeRequest), cancelling a request or modifying headers (onBeforeSendHeaders, onHeadersReceived), or providing authentication credentials (onAuthRequired). | так что проблема не в этом.
|