【发布时间】:2011-10-06 20:58:19
【问题描述】:
我有一个用 ASP.NET 4.0 构建的网站,目前我有一个带有 URL 的下拉框、一个转到该 URL 并解析文本的按钮,最后是一个带有解析文本的结果框。
我想要做的不是访问我的网站并在下拉框中选择 URL,而是希望将参数作为完整 URL 传递,然后让按钮转到该位置,然后执行它的操作。有点像我可以交给用户的永久链接
例如:
http://localhost:62554/WebSite5/Default.aspx --> http://google.com
google.com 被放入一个变量中(比如说它的MyURL),按钮就像它在下拉框中一样。
**更新的代码:现在在
using (StreamReader objReader = new StreamReader(objRequest.GetResponse().GetResponseStream()))
string newURL;
String url;
protected void Page_Load(object sender, EventArgs e)
{
//Request.Params.Get("newURL").ToString();
//string url = Request["newURL"];
//url = Request.QueryString["newURL"].ToString();
url = Request.QueryString["newURL"].ToString();
parseButton_Click(sender, e);
}
protected void parseButton_Click(object sender, EventArgs e)
{
//MyURL = deviceCombo.Text;
//MyURL = Request.Params.Get("");
//MyURL = Request.Params.Get("newURL");
//MyURL = newURL;
//string MyURL = Request.Params["newURL"].ToString();
WebRequest objRequest = HttpWebRequest.Create(url);
objRequest.Credentials = CredentialCache.DefaultCredentials;
using (StreamReader objReader = new StreamReader(objRequest.GetResponse().GetResponseStream()))
{
originalText.Text = objReader.ReadToEnd();
}
//Read all lines of file
String[] crString = { "<BR> " };
String[] aLines = originalText.Text.Split(crString, StringSplitOptions.RemoveEmptyEntries);
String noHtml = String.Empty;
for (int x = 0; x < aLines.Length; x++)
{
if (aLines[x].Contains(filterCombo.SelectedValue))
{
noHtml += (RemoveHTML(aLines[x]) + "\r\n");
}
}
//Print results to textbox
resultsBox.Text = String.Join(Environment.NewLine, noHtml);
}
有什么想法吗?谢谢
【问题讨论】:
-
有点像一个永久链接,我可以将它交给用户,而不是让他们访问我的网站并单击下拉框并选择正确的 URL 进行解析。
-
请注意:切勿针对谷歌进行任何测试。首先,它不好看。其次,更重要的是,根据您进行多少测试,谷歌可能会决定阻止您。我已经看到它发生了。
标签: c# asp.net parameter-passing