34

我正在尝试使用 PowerShell 获取 Microsoft Translator 应用程序的访问令牌,但该过程中的某些命令由于错误而失败:

Unable to find type [System.Web.HttpUtility]

在收到此错误之前,我将此 MSDN 页面中的代码复制并粘贴到 PowerShell ISE 中,并将占位符值替换为我的实际凭据:

# ...
$ClientID = '<Your Value Here From Registered Application>'
$client_Secret = ‘&lt;Your Registered Application client_secret>'

# If ClientId or Client_Secret has special characters, UrlEncode before sending request
$clientIDEncoded = [System.Web.HttpUtility]::UrlEncode($ClientID)
$client_SecretEncoded = [System.Web.HttpUtility]::UrlEncode($client_Secret)
# ...

我需要添加哪些额外代码才能使其正常工作?

4

1 回答 1

81

您需要加载System.Web程序集。像这样使用Add-Typecmdlet,

PS C:\> [System.Web.HttpUtility]::UrlEncode("www.google.com")
Unable to find type [System.Web.HttpUtility].

PS C:\> Add-Type -AssemblyName System.Web
PS C:\> [System.Web.HttpUtility]::UrlEncode("www.google.com")
www.google.com
于 2016-07-16T08:10:38.293 回答