簡體   English   中英

如何在 delphi 中使用 TIdHttp 連接到特殊鏈接?

[英]How to connect to speacial links using TIdHttp in delphi?

瀏覽器示例

我有以下鏈接可以使用 url 中的用戶名和密碼連接到我的 IP 攝像機。

http://admin:password@192.168.1.13/ISAPI/Streaming/channels/102/picture

如果我在 Internet Explorer 中打開此鏈接,它會顯示以下消息並且無法打開該鏈接。

Windows can not locate <link>. Check your spelling and try again

當我在 Firefox 的 Chrome 中打開相同的鏈接時,它工作正常並顯示所需的 jpg 圖片。

德爾福

在 delphi 中,我使用TIdHttp從此鏈接獲取圖片。

var
  Ms: TMemoryStream;
  PictureUrl: string;
begin
  try
    PictureUrl := 'http://admin:password@192.168.1.13/ISAPI/Streaming/channels/102/picture';
    IdHTTP1.get(PictureUrl, MS);
    Ms.Seek(0,soFromBeginning);
    MS.SaveToFile('C:\Users\karat\Documents\hikivision1.jpg');
  finally
    FreeAndNil(MS);
  end;
end;

該代碼適用於另一個 jpg 圖像鏈接,問題是該代碼獲取 178byts MemoryStream,這意味着圖片未被加載。

我在表單中放置了一個TWebBrowser ,我發現它給我的錯誤與在 Internet Explorer 瀏覽器中一樣,瀏覽器不支持加載這種類型的 url。

網絡瀏覽器錯誤

翻譯:無法訪問此頁面。 檢查您的鏈接是否正確。

解決方案?

我假設如果我找到一種方式使TIdHttp像 Chrome 和 Firefox 一樣工作,它將正確加載所需的圖片。 有什么辦法可以做到這一點或其他可能的解決方案嗎?

瀏覽器示例

我有以下鏈接可以使用 url 中的用戶名和密碼連接到我的網絡攝像機。

http://admin:password@192.168.1.13/ISAPI/Streaming/channels/102/picture

如果我在 Internet Explorer 中打開此鏈接,它會顯示以下消息,但無法打開該鏈接。

Windows can not locate <link>. Check your spelling and try again

當我在 Firefox 的 Chrome 中打開相同的鏈接時,它工作正常並顯示所需的 jpg 圖片。

德爾福

在 delphi 中,我使用TIdHttp從這個鏈接獲取圖片。

var
  Ms: TMemoryStream;
  PictureUrl: string;
begin
  try
    PictureUrl := 'http://admin:password@192.168.1.13/ISAPI/Streaming/channels/102/picture';
    IdHTTP1.get(PictureUrl, MS);
    Ms.Seek(0,soFromBeginning);
    MS.SaveToFile('C:\Users\karat\Documents\hikivision1.jpg');
  finally
    FreeAndNil(MS);
  end;
end;

該代碼適用於另一個 jpg 圖片鏈接,問題是該代碼獲得了 178 字節的 MemoryStream,這意味着圖片沒有被加載。

我在表單中放置了一個TWebBrowser ,我發現它給了我與 Internet Explorer 瀏覽器相同的錯誤,瀏覽器不支持加載這種類型的 url。

網頁瀏覽器錯誤

翻譯:無法訪問此頁面。 檢查您的鏈接是否正確。

解決方案?

我假設如果我找到了一種讓TIdHttp表現得像 Chrome 和 Firefox 一樣的方式,它將正確加載所需的圖片。 有什么辦法可以做到這一點或其他可能的解決方案?

如果它沒有運行,則嘗試另外設置以下內容:

請求.BasicAuthentication:= False; HTTPOptions:= [hoInProcessAuth, hoForceEncodeParams];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM