Forum Discussion
Working Examples of WebAction.Request
See this thread
Syntax would be (for example)
web2 = WebAction.Request(WebMethod.Post,URL,[Content = data, Headers = headers, ManualStatusHandling = {404, 400}]),
Any particular reason you need to use this versus Web.Contents ?
Thanks for the example.
The problem is that syntax brings up a credential error when executed. The credential request option pops up over and over again.
Even something as simple as WebAction.Request(WebMethod.Get,"https://www.sdsu.edu/",[ManualStatusHandling = {404, 400}]) causes the same error
>Any particular reason you need to use this versus Web.Contents ?
Two reasons.
1. I'm hoping that Value. Metadata with WebAction.Request will show all the the response headers where Web.Contents shows null
2. If that doesn't work, may be WebMethod.Put will allow me to pass the headers to another request
Do you have any experience with using "Actions"?
- lbendlin6 years agoSuper User
I get the same error as in the thread I linked to. For now I am ok with just using Web.Contents even if it is sometimes a bit weird. Here is an example of a call against Microsoft's own REST API that requires some creative result wrangling because they don't adhere to simple HTTP standards.
(GatewayId as text, ConnectionId as text) => let JsonData = try Json.Document(Web.Contents("https://api.powerbi.com/v1.0/myorg/gateways/" & GatewayId & "/datasources/" & ConnectionId & "/status", [Headers=[Authorization=Authorization]])), value = if JsonData[Error][Message]="We reached the end of the buffer." then "True" else "False" in valueA "gateway connection is good" 200 response is hampered by an empty return body that I have to mitigate separately. Maybe you can do something similar with your web request.
- rtaylor6 years agoHelper III
Yeah its not that I can't use web.contents. Its that the nature of web.contents hides the response headers from Value.Metadata. I'm hoping/praying WebAction.Request won't have the same restrictions.