Edge Extension: get current tab url









up vote
0
down vote

favorite












I'am trying to port a chrome extension to microsoft edge with the microsoft edge extension toolkit.



In my extension i must get the current tab url, to perform an api call.



so in chrome and firefox i use this code in a browser_action:



chrome.tabs.query(active: true, currentWindow: true, function(tabs) 
// print object for debugging
console.log(JSON.stringify(tabs[0]));

// get active tab url
var activeTab = tabs[0];
var activeTabURL = activeTab.url;
document.getElementById("input").value = activeTabURL;
);


In Edge the url is not in this object and i cant find anything in there documentation. Can anyone tell me how to get the url in edge?










share|improve this question





















  • I don't know about Edge but in Chrome the url property is present only if you have "tabs" in "permissions" in manifest.json along with a matching URL pattern or "activeTab".
    – wOxxOm
    Nov 11 at 12:09






  • 1




    thats right...in chrome and firefox my code is working and the "activeTab" permission in manifest.json is set ;-)
    – Tobias
    Nov 11 at 12:10










  • Quick googling shows activeTab doesn't seem to be supported in Edge.
    – wOxxOm
    Nov 11 at 12:11










  • as i write in my question, i know it and searching a way how to get the url in edge
    – Tobias
    Nov 11 at 12:12






  • 1




    No, you didn't write you know it, but by a simple exclusion the only way is to have "tabs" and a matching URL pattern in "permissions" (or "optional_permissions" if Edge supports it).
    – wOxxOm
    Nov 11 at 12:16















up vote
0
down vote

favorite












I'am trying to port a chrome extension to microsoft edge with the microsoft edge extension toolkit.



In my extension i must get the current tab url, to perform an api call.



so in chrome and firefox i use this code in a browser_action:



chrome.tabs.query(active: true, currentWindow: true, function(tabs) 
// print object for debugging
console.log(JSON.stringify(tabs[0]));

// get active tab url
var activeTab = tabs[0];
var activeTabURL = activeTab.url;
document.getElementById("input").value = activeTabURL;
);


In Edge the url is not in this object and i cant find anything in there documentation. Can anyone tell me how to get the url in edge?










share|improve this question





















  • I don't know about Edge but in Chrome the url property is present only if you have "tabs" in "permissions" in manifest.json along with a matching URL pattern or "activeTab".
    – wOxxOm
    Nov 11 at 12:09






  • 1




    thats right...in chrome and firefox my code is working and the "activeTab" permission in manifest.json is set ;-)
    – Tobias
    Nov 11 at 12:10










  • Quick googling shows activeTab doesn't seem to be supported in Edge.
    – wOxxOm
    Nov 11 at 12:11










  • as i write in my question, i know it and searching a way how to get the url in edge
    – Tobias
    Nov 11 at 12:12






  • 1




    No, you didn't write you know it, but by a simple exclusion the only way is to have "tabs" and a matching URL pattern in "permissions" (or "optional_permissions" if Edge supports it).
    – wOxxOm
    Nov 11 at 12:16













up vote
0
down vote

favorite









up vote
0
down vote

favorite











I'am trying to port a chrome extension to microsoft edge with the microsoft edge extension toolkit.



In my extension i must get the current tab url, to perform an api call.



so in chrome and firefox i use this code in a browser_action:



chrome.tabs.query(active: true, currentWindow: true, function(tabs) 
// print object for debugging
console.log(JSON.stringify(tabs[0]));

// get active tab url
var activeTab = tabs[0];
var activeTabURL = activeTab.url;
document.getElementById("input").value = activeTabURL;
);


In Edge the url is not in this object and i cant find anything in there documentation. Can anyone tell me how to get the url in edge?










share|improve this question













I'am trying to port a chrome extension to microsoft edge with the microsoft edge extension toolkit.



In my extension i must get the current tab url, to perform an api call.



so in chrome and firefox i use this code in a browser_action:



chrome.tabs.query(active: true, currentWindow: true, function(tabs) 
// print object for debugging
console.log(JSON.stringify(tabs[0]));

// get active tab url
var activeTab = tabs[0];
var activeTabURL = activeTab.url;
document.getElementById("input").value = activeTabURL;
);


In Edge the url is not in this object and i cant find anything in there documentation. Can anyone tell me how to get the url in edge?







javascript google-chrome-extension microsoft-edge






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 11 at 12:05









Tobias

361113




361113











  • I don't know about Edge but in Chrome the url property is present only if you have "tabs" in "permissions" in manifest.json along with a matching URL pattern or "activeTab".
    – wOxxOm
    Nov 11 at 12:09






  • 1




    thats right...in chrome and firefox my code is working and the "activeTab" permission in manifest.json is set ;-)
    – Tobias
    Nov 11 at 12:10










  • Quick googling shows activeTab doesn't seem to be supported in Edge.
    – wOxxOm
    Nov 11 at 12:11










  • as i write in my question, i know it and searching a way how to get the url in edge
    – Tobias
    Nov 11 at 12:12






  • 1




    No, you didn't write you know it, but by a simple exclusion the only way is to have "tabs" and a matching URL pattern in "permissions" (or "optional_permissions" if Edge supports it).
    – wOxxOm
    Nov 11 at 12:16

















  • I don't know about Edge but in Chrome the url property is present only if you have "tabs" in "permissions" in manifest.json along with a matching URL pattern or "activeTab".
    – wOxxOm
    Nov 11 at 12:09






  • 1




    thats right...in chrome and firefox my code is working and the "activeTab" permission in manifest.json is set ;-)
    – Tobias
    Nov 11 at 12:10










  • Quick googling shows activeTab doesn't seem to be supported in Edge.
    – wOxxOm
    Nov 11 at 12:11










  • as i write in my question, i know it and searching a way how to get the url in edge
    – Tobias
    Nov 11 at 12:12






  • 1




    No, you didn't write you know it, but by a simple exclusion the only way is to have "tabs" and a matching URL pattern in "permissions" (or "optional_permissions" if Edge supports it).
    – wOxxOm
    Nov 11 at 12:16
















I don't know about Edge but in Chrome the url property is present only if you have "tabs" in "permissions" in manifest.json along with a matching URL pattern or "activeTab".
– wOxxOm
Nov 11 at 12:09




I don't know about Edge but in Chrome the url property is present only if you have "tabs" in "permissions" in manifest.json along with a matching URL pattern or "activeTab".
– wOxxOm
Nov 11 at 12:09




1




1




thats right...in chrome and firefox my code is working and the "activeTab" permission in manifest.json is set ;-)
– Tobias
Nov 11 at 12:10




thats right...in chrome and firefox my code is working and the "activeTab" permission in manifest.json is set ;-)
– Tobias
Nov 11 at 12:10












Quick googling shows activeTab doesn't seem to be supported in Edge.
– wOxxOm
Nov 11 at 12:11




Quick googling shows activeTab doesn't seem to be supported in Edge.
– wOxxOm
Nov 11 at 12:11












as i write in my question, i know it and searching a way how to get the url in edge
– Tobias
Nov 11 at 12:12




as i write in my question, i know it and searching a way how to get the url in edge
– Tobias
Nov 11 at 12:12




1




1




No, you didn't write you know it, but by a simple exclusion the only way is to have "tabs" and a matching URL pattern in "permissions" (or "optional_permissions" if Edge supports it).
– wOxxOm
Nov 11 at 12:16





No, you didn't write you know it, but by a simple exclusion the only way is to have "tabs" and a matching URL pattern in "permissions" (or "optional_permissions" if Edge supports it).
– wOxxOm
Nov 11 at 12:16













1 Answer
1






active

oldest

votes

















up vote
0
down vote



accepted










In comments, it was established that the original extension used "activeTab" permission to gain access to the active tab's details without broad permissions.



Since it's not supported by Edge (yet), you effectively don't have permissions to the tabs' details (as this is sensitive data), you need to fall back to having broad permissions.



Declaring "tabs" permission will be sufficient to get the URL of any open tab.






share|improve this answer




















    Your Answer






    StackExchange.ifUsing("editor", function ()
    StackExchange.using("externalEditor", function ()
    StackExchange.using("snippets", function ()
    StackExchange.snippets.init();
    );
    );
    , "code-snippets");

    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "1"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53248560%2fedge-extension-get-current-tab-url%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    0
    down vote



    accepted










    In comments, it was established that the original extension used "activeTab" permission to gain access to the active tab's details without broad permissions.



    Since it's not supported by Edge (yet), you effectively don't have permissions to the tabs' details (as this is sensitive data), you need to fall back to having broad permissions.



    Declaring "tabs" permission will be sufficient to get the URL of any open tab.






    share|improve this answer
























      up vote
      0
      down vote



      accepted










      In comments, it was established that the original extension used "activeTab" permission to gain access to the active tab's details without broad permissions.



      Since it's not supported by Edge (yet), you effectively don't have permissions to the tabs' details (as this is sensitive data), you need to fall back to having broad permissions.



      Declaring "tabs" permission will be sufficient to get the URL of any open tab.






      share|improve this answer






















        up vote
        0
        down vote



        accepted







        up vote
        0
        down vote



        accepted






        In comments, it was established that the original extension used "activeTab" permission to gain access to the active tab's details without broad permissions.



        Since it's not supported by Edge (yet), you effectively don't have permissions to the tabs' details (as this is sensitive data), you need to fall back to having broad permissions.



        Declaring "tabs" permission will be sufficient to get the URL of any open tab.






        share|improve this answer












        In comments, it was established that the original extension used "activeTab" permission to gain access to the active tab's details without broad permissions.



        Since it's not supported by Edge (yet), you effectively don't have permissions to the tabs' details (as this is sensitive data), you need to fall back to having broad permissions.



        Declaring "tabs" permission will be sufficient to get the URL of any open tab.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 14 at 16:58









        Xan

        52.9k10101128




        52.9k10101128



























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53248560%2fedge-extension-get-current-tab-url%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            這個網誌中的熱門文章

            How to read a connectionString WITH PROVIDER in .NET Core?

            Node.js Script on GitHub Pages or Amazon S3

            Museum of Modern and Contemporary Art of Trento and Rovereto