我正在開發一個Web應用程序,需要在客戶端計算機上調用定製註冊協議。目前我對協議做了GET,然後通過查詢字符串傳遞參數。可能發佈到自定義註冊協議/方案?
是否可以對自定義註冊協議執行POST,如果可以,我將如何去解壓縮CustomProtocol.exe中的頭信息?
這是我目前的GET解決方案
從JavaScript
Custom://startup?Function=DoSomething&Value1=Test&Value2=Test
,我註冊到我的機器定製協議發起呼叫。
[HKEY_CLASSES_ROOT\Custom\shell\open\command]
@="\"CustomProtocol.exe\" \"%1\""
然後我編譯了下面的代碼來生成CustomProtocol.exe。在執行過程中,URI被傳遞給Main方法,然後我提取查詢字符串。
namespace CustomProtocol
{
class Program
{
static void Main(string[] args)
{
// Get the querystring from the URI being passed in
// Business code...
}
}
}
EDIT 1:
這是頭做後到自定義註冊協議時。該協議只有1個參數傳遞給它,就像GET是URI一樣。不知怎的,如果我只能夠訪問頭信息...
Request URL:http://localhost/CustomWebInvoker/Default.aspx Request Headersview source Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Content-Type:application/x-www-form-urlencoded Origin:http://localhost Referer:http://localhost/CustomWebInvoker/Default.aspx User-Agent:Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.78 Safari/535.11 Form Dataview URL encoded
__VIEWSTATE:/wEPDwUKMTkxMDU5NzI4OWRkBWZZppW219Muku6ZjiGZLQG5um8=
__EVENTVALIDATION:/wEWCwKz9d77DAK57evuBgLk0vuTDALl+pjzDQKB8r3PAQKk+8X1CwLLneGNCgK2gO/LCAK355HvBAKAseegDAL+ovbYDMmmPuTHB0XbFjGRG9Wl1ij5kObV
dlLanguage:English
dlApplicationMode:UpdateMode
dlCallingApplication:CSS
dlCentre:EasternCompCenter
btnFastPath:Fast Path
當你嘗試時會發生什麼? – BNL 2012-03-28 15:27:35
給它一個去,並添加上面的編輯。同樣的結果,只有URI是唯一的參數傳遞,我至今無法從我的CustomProtocol.exe中訪問頭信息。 – silentfrost 2012-03-30 15:08:01