cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Richard_W Frequent Visitor
Frequent Visitor

Web.Contents unencoding forward slahes

Hi,

 

I'm trying to call the Google Search Console API which requires the following format:

 

GET https://www.googleapis.com/webmasters/v3/sites/siteUrl/urlCrawlErrorsCounts/query

Where siteUrl is an encoded URL of the format:

 

https%3A%2F%2Fwww.example.com

 

However when I put that in to the Web.Contents function it always unencodes the forward slashes meaning I can never reach the Google endpoint.

 

Example:

CfceSgI

 

 

 

 

 

 

 

 

 

I have used the Uri.EscapeDataString() function but Web.Contents just undoes the encoding.

 

How do I tell the function not to unencode the string?

 

Thanks,

Richard

3 REPLIES 3
v-huizhn-msft Super Contributor
Super Contributor

Re: Web.Contents unencoding forward slahes

Hi @Richard_W,

You can ask for help from Google Support  to get how to use Google Search Console API to retrieve data. Then use "Get Data->Web" entry in Power BI Desktop or directly add connection information in Advanced Editor to connect to your API. There are some samples for your reference.

API Strategies with Power BI
Get Data from Twitter API with Power Query

how to connect my web api wtih Power BI Reports?

Regards,
Angelia

Richard_W Frequent Visitor
Frequent Visitor

Re: Web.Contents unencoding forward slahes

Hi @v-huizhn-msft,

 

Thanks for your response, however I can't seem to find any reference to people trying to encode a '/' in Web.Contents.

 

I firmly believe this is a problem with the Web.Contents function and for some reason it is unencoding any '%2F' into a '/' even though I don't want it to.

 

Example power query:-

 

let
    URL = "https://www.example.com/en-gb",
    Encode = Uri.EscapeDataString(URL),
    Source = Web.Contents("https://dataapi.com/site/" & Encode & "/dataEndpoint"),
in
    Source

The expected result from this power query should be:-

 

https://dataapi.com/site/https%3A%2F%2Fwww.example.com%2Fen-gb/dataEndpoint

 

But instead the actual call from Web.Contents is to:-

 

https://dataapi.com/site/https%3A//www.example.com/en-gb/dataEndpoint

 

Which is wrong!

 

How can I force Web.Contents to keep the '%2F' encoded and not to unencode it to a '/'?

 

Thanks,

Richard

Richard_W Frequent Visitor
Frequent Visitor

Re: Web.Contents unencoding forward slahes

I've used fiddler to see what URL is going out from Power BI and can confirm that it is unencoding the '%2F' to a '/'.

 

Any idea what I can do to stop this?

 

Thanks,

Richard

Helpful resources

Announcements
Back to School Contest

Back to School Contest

Engage and empower students with Power BI!

MBAS Gallery

Watch Sessions On Demand!

Continue your learning in our online communities.

Summit Australia 2019

Summit Australia 2019

Travel to Melbourne and network with thousands of peers!

Top Ideas
Users Online
Currently online: 206 members 2,303 guests
Please welcome our newest community members: