Il y a quelques jours, il y a eu une demande pour obtenir des informations sur un certain site Web, mais le site Web nécessite un accès aux publications. Voici maintenant deux méthodes trouvées sur Google
utilisant
la chaîne statique WebClinetPost (string url, string postData, string encodeType ; ,hors chaîne, erreur)
{
chaîne uriString = url ;
octet[] octetArray;
octet[] réponseArray ;
//postData = "checkvalue=32&bbb=%CD%B6%C6%B1&ilc=0&kkk=22";
Encodage encodage = Encoding.GetEncoding(encodeType);
essayer
{
WebClient monWebClient = new WebClient();
WebHeaderCollection maWebHeaderCollection ;
myWebClient.Headers.Add("Content-Type","application/x-www-form-urlencoded");
//myWebClient.Headers.Add("Referer"," http://xxxxx/xxxxxxxxxxxxxxxxxxxxxxxx ");
//myWebClient.Headers.Add("Accept-Language","zh-cn");
myWebHeaderCollection = myWebClient.Headers ;
byteArray = encoding.GetBytes(postData);
réponseArray = myWebClient.UploadData(uriString,"POST",byteArray
err=string.Empty
);
return encoding.GetString(responseArray);
}
attraper(Exception ex)
{
err=ex.Message;
return string.Empty;
}
}
chaîne statique publique HttpWebResponsePost (URL de chaîne, chaîne postData, chaîne encodeType, erreur de chaîne de sortie)
{
Stream outstream = null ;
Stream instream=
null ;
StreamReader sr = null ;
réponse HttpWebRequest
= null
; Encoding.GetEncoding(encodeType);
data
= encoding.GetBytes(postData);
request = WebRequest.Create(url) as HttpWebRequest;
CookieContainer cookieContainer = new CookieContainer
=
"
application/x-
www-
form-urlencoded";
request.ContentLength = data.Length;
outstream = request.GetRequestStream();
outstream.Write(data,0,data.Length);
outstream.Close();
réponse = request.GetResponse() comme HttpWebResponse;
instream = réponse.GetResponseStream();
sr = new StreamReader( instream, encodage );
contenu de la chaîne = sr.ReadToEnd();
err = string.Empty;
renvoyer le contenu ;
}
catch (Exception ex)
{
err = ex.Message ;
string.Empty
;
}
Code d'appel :
chaîne url=" http://xxxxxx/xxxxxxxx/scrrm00542.jsp ";
chaîne postData="proj_id=600197&theSubmit=600197";
chaîne encodeType="utf-8";
chaîne err="";
//string content=HttpWebResponsePost(url,postData,encodeType,out err);
string content=WebClinetPost(url,postData,encodeType,out err);
De plus, veuillez joindre le code d'implémentation javascript :
<langage de script=javascript>
fonction GetData()
{
var postData = "proj_id=600197&theSubmit=600197";
var http = new GetXMLHTTPRequest();
http.open('POST', 'http://xxxxxxxxxx/xxxxxx/scrrm00542.jsp', false);
http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
http.send(postData);
renvoie http.responseText ;
}
fonction GetXMLHTTPRequest()
{
var progIDs = ["Msxml2.XMLHTTP.5.0", "Msxml2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"];
pour (var i = 0; i < progIDs.length; ++i)
{
var IDprog = IDprog[i];
essayer
{
var x = nouveau ActiveXObject (progID);
renvoyer x ;
}
attraper (e)
{}
}
}
</script>
http://www.cnblogs.com/lwyaster/archive/2007/01/09/615815.html