2015-10-09 146 views
0

我在寫一個PowerShell腳本,它應該從鏈接下載一個.csv文件。錯誤403 - 下載失敗

我想它是這樣的:

$us = "user" 
$pw = "password" 
$webclient = New-Object System.Net.WebClient 
$webclient.Credentials = New-Object System.Net.Networkcredential($us, $pw) 
$webclient.DownloadFile($url,$pfad) 

,但我得到了以下403錯誤:

enter image description here

誰能告訴我什麼,我做錯了什麼? PS:我可以從另一個頁面下載.png。如果我在瀏覽器中輸入鏈接,我也可以下載這個.csv文件。

編輯12.10.15:
我發現了一個錯誤。我在URL中有「」。現在我用「%20」替換了所有「」。
但我仍然有這樣的錯誤:
enter image description here

回答

2

你的代碼看起來OK我,但用戶似乎並不具有對文件的訪問。見Wikipedia article上的錯誤403:

Difference from status "401 Unauthorized"

Status codes 401 (Unauthorized) and 403 (Forbidden) have distinct meanings.
[...]
A 403 response generally indicates one of two conditions:

  • Authentication was provided, but the authenticated user is not permitted to perform the requested operation.
  • The operation is forbidden to all users. For example, requests for a directory listing return code 403 when directory listing has been disabled.

你可能需要檢查服務器日誌中關於爲何請求被拒絕的詳細信息。

+0

很糟糕,我沒有在服務器上的任何錯誤日誌:/我想我應該有正確的權限。因爲如果我採用生成的url並使用IE打開它,我可以下載該文件。 – npit

+0

沒有關於爲什麼服務器認爲你不被允許訪問該文件的信息,沒有什麼我可以告訴你的。 –

0

它看起來像遠程服務器不喜歡你。 您可能需要在代碼中添加一些憑據以確認您的身份。 您是否可以連接到服務器而無需使用任何用戶名或密碼的詳細信息?

+0

是的,如果我在我的IE中鍵入鏈接,我可以下載沒有憑據的文件。 – npit