Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firefox addon 使用firefox sync 1.1的WebExtensions_Firefox Addon_Xpcom_Firefox Addon Webextensions - Fatal编程技术网

Firefox addon 使用firefox sync 1.1的WebExtensions

Firefox addon 使用firefox sync 1.1的WebExtensions,firefox-addon,xpcom,firefox-addon-webextensions,Firefox Addon,Xpcom,Firefox Addon Webextensions,我正在尝试更新一个基于XUL&XPCOM的旧Firefox插件,并在WebExtension中重新实现它。这个新的附加组件将使用基于的安全交换一些信息。我不能使用firefox同步服务器1.5,因为它不使用J-PAKE。我已经能够很好地与服务器对话,但现在在协议的第二步上遇到了障碍 移动/桌面从随机弱机密(4个字符a-z0-9)和 频道ID,计算并上传J-PAKE msg 1。v2的新功能:到 防止重试时重复上载,如果不匹配:*标题 是指定的。这确保只有在 频道是空的。如果不是,则请求将以412

我正在尝试更新一个基于XUL&XPCOM的旧Firefox插件,并在WebExtension中重新实现它。这个新的附加组件将使用基于的安全交换一些信息。我不能使用firefox同步服务器1.5,因为它不使用J-PAKE。我已经能够很好地与服务器对话,但现在在协议的第二步上遇到了障碍

移动/桌面从随机弱机密(4个字符a-z0-9)和 频道ID,计算并上传J-PAKE msg 1。v2的新功能:到 防止重试时重复上载,如果不匹配:*标题 是指定的。这确保只有在 频道是空的。如果不是,则请求将以412失败 前提条件失败,应视为与200 OK相同。这个 412还将包含客户端刚刚发布的数据的Etag 上传

问题在于XPCOM对象使用的旧实现:

var jpake = Component.Classes["@mozilla.org/services-crypto/sync-jpake;1"].createInstance(Ci.nsISyncJPAKE);
并允许使用所描述和实现的功能

它负责生成:
gx1、gv1、r1、gx2、gv2和r2

有没有办法在中使用XPCOM对象?或者我是被迫使用的,和

我曾试图用它来模仿别人的价值观,但没有成功

欢迎任何帮助,
谢谢

这是在开发频道上发送的电子邮件,您可以在经典插件中使用WebExt forom,这意味着为了过渡,我不确定它的永久性:

Hi all,
As part of the ongoing changes to the WebExtensions internals, we are working to enable any restartless classic extension (restartless add-ons  based on a bootstrap.js file and add-ons created using the SDK) to embed a WebExtension inside them,
as a path for gradually porting existent addons into a WebExtension and gradually move into the embedded WebExtension any features that has better support as WebExtensions APIs.

The related bugzilla issues are:
- "Bug 1252227: Embed WebExtension in Classic Extensions"
- "Bug 1252215: Expose WebExtension messaging to Classic Extensions"
- "Bug 1269342: XPIProvider should provide optional embedded webextension instance to classic extensions"
- "Bug 1269347 - Expose the optional embedded webextension as a builtin SDK module"

Any classic extension that is going to use this feature will have, besides the classic extension code which is running with "browser" privileges, an embedded webextension running inside it (with the same addon id of the container addon) and the classic extension code will be able to exchange messages with any of the available embedded webextension contexts
(e.g. a background page, a popup page or a content script) using a subset of the WebExtension `runtime` API (in particular it will be able to subscribe listeners to `onMessage` and `onConnect`).

All the embedded webextension resources will be loaded from the `webextension/` sub directory of the container add-on resources (and the embedded webextension will not be able to load anything from outside that directory, 'cause it is going to be its base URI).

As you can imagine (many thanks to Andrew for pointing it out during our brief planning chats), this new feature is probably going to need some sort of special handling by both AMO and the addons linter, and I'm starting this email thread to collect more feedback and ideas.

Some initial thoughts about the `addons linter`:

- the addons linter should be able to recognize hybrid addons and do not confuse hybrid addons for a pure webextension addon
  (e.g. the hybrid addons will have potentially more privileges that the ones listed in the webextension manifest file)

- the addons linter should check that there are no conflicts betwen the metadata in the install.rdf/package.json and the metadata in the `webextension/manifest.json` file.

- the linting of the webextension part can probably ignore the file which are not in the `webextension/` subdir, because the webextension will not being able to load anything from outside that directory

- the linting of the classic extension part needs to lint all the files in the addon (because the resources in the `webextension/` can be accessed from the classic extension part of the addon)

- the linting of the classic extension part should warn the reviewer on any suspicious usage of files manipulation? (can the classic extension part potentially change the packages resources? e.g. the manifest file or a background script, loaded in the embedded webextension and trick the linter)

Some initial thoughts about `AMO`:

- the hybrid addons submission on AMO should be supported, e.g. for signing or listing (probably not a lot of changes are needed, it should be recognized as a classic extension addon and the addon metadata retrieved from the install.rdf file)

- during the add-onreview, should AMO highlight when an addon is an hybrid add-on?

Any further thoughts, feedback or ideas are absolutely welcome.

这是在dev频道上发送的电子邮件,您可以在经典插件中使用WebExt-forom,这意味着出于转换目的,我不确定它的永久性:

Hi all,
As part of the ongoing changes to the WebExtensions internals, we are working to enable any restartless classic extension (restartless add-ons  based on a bootstrap.js file and add-ons created using the SDK) to embed a WebExtension inside them,
as a path for gradually porting existent addons into a WebExtension and gradually move into the embedded WebExtension any features that has better support as WebExtensions APIs.

The related bugzilla issues are:
- "Bug 1252227: Embed WebExtension in Classic Extensions"
- "Bug 1252215: Expose WebExtension messaging to Classic Extensions"
- "Bug 1269342: XPIProvider should provide optional embedded webextension instance to classic extensions"
- "Bug 1269347 - Expose the optional embedded webextension as a builtin SDK module"

Any classic extension that is going to use this feature will have, besides the classic extension code which is running with "browser" privileges, an embedded webextension running inside it (with the same addon id of the container addon) and the classic extension code will be able to exchange messages with any of the available embedded webextension contexts
(e.g. a background page, a popup page or a content script) using a subset of the WebExtension `runtime` API (in particular it will be able to subscribe listeners to `onMessage` and `onConnect`).

All the embedded webextension resources will be loaded from the `webextension/` sub directory of the container add-on resources (and the embedded webextension will not be able to load anything from outside that directory, 'cause it is going to be its base URI).

As you can imagine (many thanks to Andrew for pointing it out during our brief planning chats), this new feature is probably going to need some sort of special handling by both AMO and the addons linter, and I'm starting this email thread to collect more feedback and ideas.

Some initial thoughts about the `addons linter`:

- the addons linter should be able to recognize hybrid addons and do not confuse hybrid addons for a pure webextension addon
  (e.g. the hybrid addons will have potentially more privileges that the ones listed in the webextension manifest file)

- the addons linter should check that there are no conflicts betwen the metadata in the install.rdf/package.json and the metadata in the `webextension/manifest.json` file.

- the linting of the webextension part can probably ignore the file which are not in the `webextension/` subdir, because the webextension will not being able to load anything from outside that directory

- the linting of the classic extension part needs to lint all the files in the addon (because the resources in the `webextension/` can be accessed from the classic extension part of the addon)

- the linting of the classic extension part should warn the reviewer on any suspicious usage of files manipulation? (can the classic extension part potentially change the packages resources? e.g. the manifest file or a background script, loaded in the embedded webextension and trick the linter)

Some initial thoughts about `AMO`:

- the hybrid addons submission on AMO should be supported, e.g. for signing or listing (probably not a lot of changes are needed, it should be recognized as a classic extension addon and the addon metadata retrieved from the install.rdf file)

- during the add-onreview, should AMO highlight when an addon is an hybrid add-on?

Any further thoughts, feedback or ideas are absolutely welcome.

是的,你可以从一个经典的插件中产生一个webextension。在经典插件端,您可以使用XPCOM。你的电子邮件是什么?我将从开发频道向你转发电子邮件。是的,你可以从一个经典插件生成一个webextension。在经典插件端,您可以使用XPCOM。你的电子邮件是什么?我将从开发频道向你转发电子邮件。
Hi all,
As part of the ongoing changes to the WebExtensions internals, we are working to enable any restartless classic extension (restartless add-ons  based on a bootstrap.js file and add-ons created using the SDK) to embed a WebExtension inside them,
as a path for gradually porting existent addons into a WebExtension and gradually move into the embedded WebExtension any features that has better support as WebExtensions APIs.

The related bugzilla issues are:
- "Bug 1252227: Embed WebExtension in Classic Extensions"
- "Bug 1252215: Expose WebExtension messaging to Classic Extensions"
- "Bug 1269342: XPIProvider should provide optional embedded webextension instance to classic extensions"
- "Bug 1269347 - Expose the optional embedded webextension as a builtin SDK module"

Any classic extension that is going to use this feature will have, besides the classic extension code which is running with "browser" privileges, an embedded webextension running inside it (with the same addon id of the container addon) and the classic extension code will be able to exchange messages with any of the available embedded webextension contexts
(e.g. a background page, a popup page or a content script) using a subset of the WebExtension `runtime` API (in particular it will be able to subscribe listeners to `onMessage` and `onConnect`).

All the embedded webextension resources will be loaded from the `webextension/` sub directory of the container add-on resources (and the embedded webextension will not be able to load anything from outside that directory, 'cause it is going to be its base URI).

As you can imagine (many thanks to Andrew for pointing it out during our brief planning chats), this new feature is probably going to need some sort of special handling by both AMO and the addons linter, and I'm starting this email thread to collect more feedback and ideas.

Some initial thoughts about the `addons linter`:

- the addons linter should be able to recognize hybrid addons and do not confuse hybrid addons for a pure webextension addon
  (e.g. the hybrid addons will have potentially more privileges that the ones listed in the webextension manifest file)

- the addons linter should check that there are no conflicts betwen the metadata in the install.rdf/package.json and the metadata in the `webextension/manifest.json` file.

- the linting of the webextension part can probably ignore the file which are not in the `webextension/` subdir, because the webextension will not being able to load anything from outside that directory

- the linting of the classic extension part needs to lint all the files in the addon (because the resources in the `webextension/` can be accessed from the classic extension part of the addon)

- the linting of the classic extension part should warn the reviewer on any suspicious usage of files manipulation? (can the classic extension part potentially change the packages resources? e.g. the manifest file or a background script, loaded in the embedded webextension and trick the linter)

Some initial thoughts about `AMO`:

- the hybrid addons submission on AMO should be supported, e.g. for signing or listing (probably not a lot of changes are needed, it should be recognized as a classic extension addon and the addon metadata retrieved from the install.rdf file)

- during the add-onreview, should AMO highlight when an addon is an hybrid add-on?

Any further thoughts, feedback or ideas are absolutely welcome.