Мы пытаемся получить токен авторизации от OAuth API.
Поскольку у нашего веб-программиста возникли некоторые проблемы с пониманием OAuth, я сделал все это в PowerShell
в PowerShell.было так же просто, как:
$clientID = "yyy"
$secretID = "zzz"
$Uri = 'https://xy.domain.com/OAuth/token?grant_type=client_credentials&client_id={0}&client_secret={1}&scope=xy' -f $clientID, $secretID
$Token = Invoke-RestMethod $Uri -method post | select -expand access_token
, но это не очень помогает нашему веб-программисту, поскольку PowerShell имеет такой уникальный синтаксис.
Теперь я хотел сделать то же самое, но построив свойwebrequest самостоятельно.
Когда я возвращаю объект $web
в PowerShell, я вижу его свойства, такие как Headers
и т. д. (см. ниже).
Есть ли способ, чтобы увидетькакие свойства Invoke-RestMethod
установил при создании запроса?тогда я мог бы прочитать оттуда свойства, которые мне нужно установить при создании моего собственного веб-запроса.
вот возвращение из моего веб-объекта:
PS C:\Windows\System32\WindowsPowerShell\v1.0> $web = [system.net.webrequest]::Create($Uri)
PS C:\Windows\System32\WindowsPowerShell\v1.0> $web
AllowAutoRedirect : True
AllowWriteStreamBuffering : True
AllowReadStreamBuffering : False
HaveResponse : False
KeepAlive : True
Pipelined : True
PreAuthenticate : False
UnsafeAuthenticatedConnectionSharing : False
SendChunked : False
AutomaticDecompression : None
MaximumResponseHeadersLength : 64
ClientCertificates : {}
CookieContainer :
SupportsCookieContainer : True
RequestUri : https://xy.domain.com/OAuth/token?grant_type=client_credentials&client_id=yyy&client_secret=zzz&scope=xy
ContentLength : -1
Timeout : 100000
ReadWriteTimeout : 300000
ContinueTimeout : 350
Address : https://xy.domain.com/OAuth/token?grant_type=client_credentials&client_id=yyy&client_secret=zzz&scope=xy
ContinueDelegate :
ServicePoint : System.Net.ServicePoint
Host : xy.domain.com
MaximumAutomaticRedirections : 50
Method : GET
Credentials :
UseDefaultCredentials : False
ConnectionGroupName :
Headers : {}
Proxy : System.Net.WebRequest+WebProxyWrapper
ProtocolVersion : 1.1
ContentType :
MediaType :
TransferEncoding :
Connection :
Accept :
Referer :
UserAgent :
Expect :
IfModifiedSince : 01.01.0001 00:00:00
Date : 01.01.0001 00:00:00
ServerCertificateValidationCallback :
CreatorInstance : System.Net.WebRequest+DesignerWebRequestCreate
CachePolicy : Level:BypassCache
AuthenticationLevel : MutualAuthRequested
ImpersonationLevel : Delegation