我有一个应用程序需要在默认Web浏览器上打开外部URL,但我不想在URL上显示参数,所以我认为我需要一个POST而不是一个GET,但是如何?在默认Web浏览器上打开网页并隐藏URL参数
我用下面的代码打开外部的默认浏览器
Friend Sub WebOpen(ByVal WebAddress As String)
Dim sInfo As New ProcessStartInfo(WebAddress)
Process.Start(sInfo)
End Sub
但这暴露的URL栏上所有的参数,因为做一个GET不是POST。
解决方案: 创建一个临时的HTML文件,并使用以前的代码打开它(WebOpen(BYVAL WebAddress作为字符串))
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -->
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml">
<!-- <head>
</head> -->
<body>
<form name="Login" method="post" action="http://www.yourWebPage.com/" target="_self">
<input id="accountLoginField" class="textInput" name="account" value="accountX" size="24"
maxlength="32" type="hidden"/>
<input id="userLoginField" class="textInput" name="user" value="userX" size="24"
maxlength="32" type="hidden"/>
<input class="textInput" name="password" value="PassX" size="24" maxlength="32" type="hidden"/>
<input name="submit" value="Start Session" type="submit" id="btn" style="color: transparent;
background-color: transparent; border-color: transparent; cursor: default;"/>
<script type="text/javascript">
<!--
var counter = 0;
var maxCount = 50;
function pushSubmit() {
if (counter++ < maxCount) {
document.getElementById('btn').click();
}
}
//start the process
window.setTimeout(pushSubmit(), 30);
</script>
</form>
</body>
</html>
你正在寻找的答案是这样的页面: [StackOverflow上(http://stackoverflow.com/questions/1705201/how-to-open-ie-with-post-info-in-c ) –
好的,感谢您的信息,现在我有一个HTML文件的按钮,它工作正常。有什么办法可以让HTML文件打开时自动点击该按钮? –
HTML文件或Windows窗体中的按钮? –