開放連結

Open 開放連結(Open ::Open

OpenURL即“開放連結”,一種解決不同的數字資源系統互操作、進行資源整合的方法,也是一項的技術標準。開放連結(OpenURL)是一種附帶有元數據信息和資源地址信息的“可運行”的URL。可用來解決二次文獻資料庫到原文服務的動態連結問題,服務提供方(通常是圖書館)維護的連結解析器能夠在相關服務網頁上動態生成開放連結。
其函式解析如下:
CInternetSession::OpenURL的問題.
CStdioFile* OpenURL( LPCTSTR pstrURL, //檔案URL地址
DWORD dwContext = 1, //上下文ID
DWORD dwFlags = INTERNET_FLAG_TRANSFER_ASCII, //標記
LPCTSTR pstrHeaders = NULL, //傳送到伺服器的數據頭
DWORD dwHeadersLength = 0 );//傳送到伺服器的數據頭長度
dwFlags可以為:
INTERNET_FLAG_RELOAD 強制重讀數據
INTERNET_FLAG_DONT_CACHE 不保存到快取
INTERNET_FLAG_TRANSFER_ASCII 使用文本數據
INTERNET_FLAG_TRANSFER_BINARY 使用二進制數據
CInternetSession session; //會話期對象)
CHttpConnection* pServer = NULL; //指向伺服器地址(URL)
CHttpFile * pHttpFile = NULL;//HTTP檔案指針
CString strServerName; //伺服器名
CString strObject; //查詢對象名(http檔案)
INTERNET_PORT nPort; //連線埠
DWORD dwServiceType; //服務類型
DWORD dwHttpRequestFlags = //請求標誌
//INTERNET_FLAG_EXISTING_CONNECT
INTERNET_FLAG_NO_AUTO_REDIRECT;
const TCHAR szHeaders[]=_T("Accept: text/*\r\nUser-Agent: httpclient\r\n");
BOOL OK=AfxParseURL( //詞法分析
pURL, //被分析URL串
dwServiceType, //服務類型,ftp,http等
strServerName, //伺服器名
strObject, //URL中被查詢對象
nPort ); //URL指定的連線埠,可能為空
OK=OK && //本例只考慮http協定

相關詞條

熱門詞條

聯絡我們