您可以透過程式設計方式或使用 BizTalk Server 管理控制台來設定 HTTP 接收位置配接器變數。 如果未在接收位置設定屬性,則會使用 BizTalk Server 管理控制台中設定的預設接收處理程式值。
備註
完成下列程式之前,您必須先新增接收埠。 如需詳細資訊,請參閱 如何建立接收埠。
如何以程式設計方式設定 HTTP 接收位置
HTTP 配接器會將其組態資訊儲存在 BizTalk 管理資料庫中(也稱為組態資料庫)。 組態會儲存在自定義 XML 屬性包中。
BizTalk Explorer 物件模型會公開具有 TransportTypeData 讀取/寫入屬性的 IReceiveLocation 組態介面。 這個屬性接受名稱/值組 XML 字串中的 HTTP 接收位置組態屬性包。
不需要設定 IReceiveLocation 的 TransportTypeData 屬性。 如果未設定,則會使用 HTTP 接收位置組態的預設值。 下表列出預設值,也會列出您可以在 BizTalk Explorer 物件模型中為 HTTP 接收位置設定的組態屬性。
| 屬性名稱 | 類型 | 說明 | 限制 | 評論 |
|---|---|---|---|---|
| ResponseContentType | 字符串 | HTTP 配接器從這個接收位置傳回給用戶端的 HTTP 回應訊息內容類型。 此屬性僅適用於要求-回應接收埠,而且會忽略單向接收埠。 | 繩子 最小長度: 0 最大長度:256 |
預設值:Text/XML |
| LoopBack | 布爾邏輯 | 指定在此位置接收到的請求訊息,將會被路由至傳送埠或回傳至接收位置作為回應傳送。 此屬性僅適用於要求-回應接收埠。 對於單向接收埠,它會被忽略。 | 沒有 | 預設值: 假 |
| ReturnCorrelationHandle | 布爾邏輯 | 如果提交成功,指定 HTTP 配接器會在 HTTP 回應中將已送出訊息的關聯令牌傳送給用戶端。 此屬性僅適用於單向接收埠,而且會忽略要求-回應接收埠。 | 沒有 | 預設值: 真 |
| 暫停失敗請求 (SuspendFailedRequests) | 布爾邏輯 | 指定是否暫停失敗的 HTTP 要求。 True 值表示暫停失敗的要求,並將「已接受」狀態代碼 (202) 傳送給客戶端進行單向接收埠,或將「錯誤」狀態代碼 (500) 傳送給用戶端進行雙向接收埠。 | 沒有 | 預設值: 假 |
| UseSSO | 布爾邏輯 | 指定 HTTP 配接器是否會對抵達此接收位置的訊息發出 SSO 票證。 | 沒有 | 預設值: 假 |
要設定這些屬性的 XML 字串格式如下:
<CustomProps>
<UseSSO vt="11">-1</UseSSO>
<SuspendFailedRequests vt="11">-1</SuspendFailedRequests>
<ReturnCorrelationHandle vt="11">-1</ReturnCorrelationHandle>
<ResponseContentType vt="8">text/xml</ResponseContentType>
<LoopBack vt="11">-1</LoopBack>
</CustomProps>
如何使用 BizTalk Server 管理控制台設定 HTTP 接收位置
若要使用 BizTalk Server 管理控制台設定接收位置,請使用下列程式。
設定 HTTP 接收位置的變數
將 Internet Information Services (IIS) 設定為與 HTTP 接收位置一起使用。 如需設定 IIS 的相關指示,請參閱 如何設定 HTTP 接收位置的 IIS。
在 BizTalk Server 管理控制台中,依序展開 [ BizTalk Server系統管理]、[ BizTalk 群組]、[ 應用程式],然後展開您要在其中建立接收位置的應用程式。
在左窗格中,按一下 接收埠 節點。 然後在右窗格中,以滑鼠右鍵按一下與現有接收位置相關聯的接收埠,或您想要與新的接收位置產生關聯的接收埠,然後按一下[屬性]。
在 [ 接收埠內容] 對話框的左窗格中,選取 [ 接收位置],然後在右窗格中按兩下現有的接收位置,或按兩下 [ 新增 ] 來建立新的接收位置。
在 [接收位置屬性] 對話方塊的 [類型] 旁的 [傳輸] 區段中,從下拉式清單中選取 [HTTP],然後按兩下 [設定]。
在 [ HTTP 傳輸屬性 ] 對話框中,執行下列動作:
使用此 若要這樣做 虛擬目錄加上 ISAPI 擴充功能 指定您張貼 HTTP/HTTPS 接收位置所接收之訊息的虛擬目錄名稱。 虛擬目錄包含接收位置 DLL 的名稱和選擇性的查詢字串。 虛擬目錄名稱的範例包括:
/<virtual directory>/BTSHTTPReceive.dll
/<虛擬目錄>/BTSHTTPReceive.dll?購買%20Order
此位置不能包含多個 BTSHTTPReceive.dll ISAPI 擴充功能,包括所有子資料夾。
類型: 字串
最大長度: 256 注意: 傳送埠或接收位置的URI不能超過256個字元。公用位址 指定這個接收位置的完整 URI。 此屬性的值是伺服器名稱和虛擬目錄的組合。 BizTalk 傳訊引擎會將此地址公開給外部合作夥伴。 指定的 URI 應該指定公用網站 URL,讓貿易夥伴在傳送訊息至 BizTalk Server 時連線。
這項資訊是選擇性的,而且不會由 BizTalk Server 使用。 此參數可供系統管理員記錄接收位置所系結的公用 URL。
類型: 字串
最小長度: 0
最大長度:256傳回內容類型 指定接收位置傳回給客戶端的 HTTP 回應訊息內容類型。 此屬性僅適用於要求-回應接收位置。
默認值: text/xml
類型: 字串
最小長度: 0
最大長度:256回送 定義在此位置上收到的要求訊息可以被路由到傳送埠,或回送到此接收位置以作為回應傳送。 此屬性僅適用於要求-回應接收位置。
預設值: 假
類型: 布爾成功時傳回相互關聯句柄(僅限單向埠) 定義如果成功,接收位置會將 HTTP 回應上所送出訊息的相互關聯令牌傳送給用戶端。 此屬性僅適用於單向接收位置。
預設值: 真
類型: 布爾使用單一登錄 請指出企業單一編號 Sign-On 已被使用。
預設值: 假
類型:布爾值注意:如果啟用此選項,您也必須在 SSO 系統層級啟用 [允許票證] 選項。 允許票證 選項可在 SSO 系統管理 MMC 介面的 SSO 系統屬性 對話框的 選項 索引標籤中進行設定。 如果啟用此選項,且 SSO 系統層級的 [允許票證] 選項未啟用,則此接收位置所接收的任何訊息都會暫停。暫停失敗的請求 指出是否要暫停無法進行輸入處理的 HTTP 要求。
False 值表示捨棄失敗的要求,並將錯誤狀態代碼 (401 或 500) 傳送給用戶端。
True 值表示暫停失敗的要求,並將單向接收埠的「已接受」狀態代碼 (200) 傳送給用戶端,或針對雙向接收埠將「錯誤」狀態代碼 (500) 傳送給用戶端。
預設值: 假
類型: 布爾值按一下 [確定] 來儲存設定。
在 [ 接收位置屬性 ] 對話框中輸入適當的值,以完成接收位置的設定,然後按兩下 [ 確定 ] 以儲存設定。 如需 [ 接收位置屬性 ] 對話框的相關信息,請參閱 如何建立接收位置。
當 HTTP 用戶端呼叫 HTTP 位置時,HTTP 配接器會使用匿名、基本、摘要或 Windows 整合式驗證來驗證 HTTP 用戶端。 如果使用者已驗證,則會將使用者內容傳遞至接收處理程式。
備註
導致 SOAP 和 HTTP 共用相同進程的任何 IIS 組態都無效。 每個程序只能有一個隔離接收者。