Поиск в Поддержке

Избегайте мошенников, выдающих себя за службу поддержки. Мы никогда не попросим вас позвонить, отправить текстовое сообщение или поделиться личной информацией. Сообщайте о подозрительной активности, используя функцию «Пожаловаться».

Подробнее

Sessions API not working/recognized in Browser Toolbox?

  • 6 ответов
  • 1 имеет эту проблему
  • 1 просмотр
  • Последний ответ от TyDraniu

more options

I'm trying to develop a simple addon using the Sessions API, so I wanted to play around a bit with the JS in the Browser Toolbox first. I have set devtools.chrome.enabled to true and pressed Ctrl+Shift+J to open the browser console. I'm able to run some JS (example: console.log("Hello world!") works as expected), but when I try to run something like sessions.getRecentlyClosed(), I get the following error message:

 Uncaught ReferenceError: sessions is not defined
    <anonymous> debugger eval code:1
    getEvalResult resource://devtools/server/actors/webconsole/eval-with-debugger.js:243
    evalWithDebugger resource://devtools/server/actors/webconsole/eval-with-debugger.js:167
    evaluateJS resource://devtools/server/actors/webconsole.js:1119
    evaluateJSAsync resource://devtools/server/actors/webconsole.js:1011
    makeInfallible resource://devtools/shared/ThreadSafeDevToolsUtils.js:103


I tried browser.sessions.getRecentlyClosed() with the same error message about "browser.sessions" not being defined. Anyone know why this is happening and how to fix it, or how to correctly import the Sessions API if that's what's needed?

Thanks!

I'm trying to develop a simple addon using the Sessions API, so I wanted to play around a bit with the JS in the Browser Toolbox first. I have set <b>devtools.chrome.enabled</b> to true and pressed <b>Ctrl+Shift+J</b> to open the browser console. I'm able to run some JS (example: <b>console.log("Hello world!")</b> works as expected), but when I try to run something like <b>sessions.getRecentlyClosed()</b>, I get the following error message: <pre> Uncaught ReferenceError: sessions is not defined <anonymous> debugger eval code:1 getEvalResult resource://devtools/server/actors/webconsole/eval-with-debugger.js:243 evalWithDebugger resource://devtools/server/actors/webconsole/eval-with-debugger.js:167 evaluateJS resource://devtools/server/actors/webconsole.js:1119 evaluateJSAsync resource://devtools/server/actors/webconsole.js:1011 makeInfallible resource://devtools/shared/ThreadSafeDevToolsUtils.js:103 </pre> I tried <b>browser.sessions.getRecentlyClosed()</b> with the same error message about "browser.sessions" not being defined. Anyone know why this is happening and how to fix it, or how to correctly import the Sessions API if that's what's needed? Thanks!

Изменено fiffox

Все ответы (6)

more options

Hi, for debugging addons you must use the Remote Debugging option, or about:debugging#/runtime/this-firefox

more options

TyDraniu said

Hi, for debugging addons you must use the Remote Debugging option, or about:debugging#/runtime/this-firefox

Hi TyDraniu, sorry for any confusion, but this question is about running javascript in the Browser Console, not debugging an addon. I'll edit the question to make it more clear.

more options

This Session API is available only for webextensions, if i'm not mistaken. You can't just run it within a web console.

more options
more options

TyDraniu said

This Session API is available only for webextensions, if i'm not mistaken. You can't just run it within a web console.

Ah, thanks, I was afraid of that. And I suppose there's no way to import webextension APIs into the console? It sure would be nice to see the output to certain code in real time (especially since the examples in the documentation were a little sparse).

more options

I was using web-ext (https://extensionworkshop.com/documentation/develop/getting-started-with-web-ext/ ) and a console under about:debugging. There is a separate console with output from a browser plus extensions.