Vraag : De code van het ASPIS aan VB 2010

Kan om het even wie hoe te om deze code in VB 2010 om te zetten adviseren?
" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
" notpretty "
 het ' Manuscript kan worden geroepen via

<%@LANGUAGE= " VBSCRIPT " CODEPAGE= " 1252 " %>

<% vraag sendsms („447740123456“, 1, „123 ABC de test van TEST“, "", "")

als AQresponse <> "" toen
  response.write (AQresponse)
anders
  response.write („FOUT“)
beëindig als

%>

Het 'daadwerkelijke manuscript volgt. Dit zou in een afzonderlijk dossier kunnen worden geplaatst, 
'zoals het hierboven beschreven smslib.asp- dossier

<%
response.buffer = waar
Ltd 'van het auteursrecht 2002 (aq).
Het 'manuscript vereist de component van Microsoft XMLHTTP

Schemerige beveiligde methode, error_on_length, gebruikersbenaming, wachtwoord, AQresponse
  'De Variabelen van Editable van de gebruiker
  beveiligd = plaatsen 0 'aan één van beide 1 voor SSL verbinding 
                                    'of 0 voor normale verbinding.
  error_on_length = 1 „of om te geven en fout op berichten meer dan 160 chracters. 
                                    “ 1 voor waar, 0 voor vals.
  de gebruikersbenaming = „testusername“ 'Uw AQLgebruikersbenaming, kan één van beiden hier worden geplaatst 
                                    'of gedaan op a per vraagbasis van de functie.
  het wachtwoord = „testpassword“ 'Uw AQLwachtwoord, kan één van beiden hier worden geplaatst
                                    'of gedaan op a per vraagbasis van de functie.

'Geef niet hier hieronder uit tenzij u weet wat u doet!

Functie sendsms (bestemming, flits, bericht, f_username, f_password, schepper)
  als f_username ongeldige <> of f_username <> "" toen
    gebruikersbenaming = f_username
  beëindig als
  als f_password ongeldige <> of f_password <> "" toen
    wachtwoord = f_password
  beëindig als
  als gebruikersbenaming = "" toen
      vraag senderror (1)
    als anders wachtwoord = "" toen
        vraag senderror (2)
    als anders bestemming = "" toen
        vraag senderror (3)
    als anders len (bericht) > 160 en error_on_length = 1 toen
        vraag senderror (6)
    als anders flits > 1 of flits < 0 toen
        vraag senderror (5)
    beëindig als
    beëindig als
    beëindig als
    beëindig als
  beëindig als

Verduister objXMLHTTP, xml
  het bericht = vervangt (bericht, „„, „+“)
  Reeks xml = Server.CreateObject („Microsoft.XMLHTTP“)
  indien beveiligd = ongeldig of beveiligd = 0 toen
    xml. Open „POST“, „http://gw1.aql.com/sms/sms_gw.php“, Vals
    xml.setRequestHeader het „tevreden-Type“, „application/x-www-vorm-urlencoded“
    xml. Verzend „username=“ & gebruikersbenaming & „&password=“ & wachtwoord & „&destination=“ & bestemming & „&message=“ & bericht & „&originator=“ & schepper & „&flash=“ & flits
  indien anders beveiligd = 1 toen
    xml. Open „POST“, „https://gw1.aql.com/sms/sms_gw.php“, Vals
    xml.setRequestHeader het „tevreden-Type“, „application/x-www-vorm-urlencoded“
    xml. Verzend „username=“ & gebruikersbenaming & „&password=“ & wachtwoord & „&destination=“ & bestemming & „&message=“ & bericht & „&originator=“ & schepper & „&flash=“ & flits
  anders
    vraag senderror (7)
    beëindig als
   beëindig als

AQresponse = xml.responseText
Reeks xml = niets

De Functie van het eind

Senderror van de functie (identiteitskaart)
  reeks xml = niets
  Selecteer geval (identiteitskaart)

  geval (1)
    response.write
      („Geen gebruikersbenaming werd gespecificeerd in of de functievraag of de configsectie“)
    response.end
  geval (2)
    response.write
      („Geen wachtwoord werd gespecificeerd in of de functievraag of de configsectie“)
    response.end
  geval (3)
    response.write („Nr aan aantal werd geplaatst in de functievraag“)
    response.end
  geval (4)
    response.write („Nr, of onjuiste gespecificeerde methode“)
    response.end
  geval (5)
    response.write („het Ongeldige plaatsen voor het berichtvlag van de Flits, moet 1 of 0“ zijn)
    reactie. Eind
  geval (6)
    response.write (het „Bericht was meer dan 160 klusjes en werd niet verzonden. “)
    response.write („om deze waarschuwing onbruikbaar te maken geef de vlag in "" smslib.asp """) uit
    response.end
  geval (7)
    response.write („Invalied die voor Veilige vlag plaatst, moet 1 of 0“ zijn)
    response.end
uitgezocht eind
eind functie

%>

Antwoord : De code van het ASPIS aan VB 2010

Het kijkt als die code post aan een verre URL.  Met VB.NET 2010, kon u de klasse gebruiken System.Net.HttpWebRequest om het zelfde effect te bereiken.

http://www.worldofasp.net/tut/WebRequest/Working_with_HttpWebRequest_and_HttpWebResponse_in_ASPNET_114.aspx

De Code van de steekproef inzake hoe te om Gegevens aan verre te posten Web-pagina die HttpWebRequest gebruikt
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
De invoer System.IO
De invoer System.Net

Openbare Klasse RemotePost

    '''  
    ''' De post aan een verre URL, en keert de reactietekst terug.
    '''  
    ''' Een geldig HTTP url
    ''' De reactie van de verre Web-pagina
    Gedeelde Overheidsfunctie PostToUrl (ByVal url als Koord) als Koord
        Schemerige uri als Nieuwe Uri (url)
        Schemerige gegevens als Koord = „field-keywords=ASP.NET 2.0“
        Als uri. Regeling = uri.UriSchemeHttp toen
            Verduister verzoek als HttpWebRequest = HttpWebRequest.Create (uri)
            verzoek. Methode = WebRequestMethods.Http.Post
            request.ContentLength = gegevens. Lengte
            request.ContentType = „application/x-www-vorm-urlencoded“
            Het gebruiken van schrijver als Nieuwe StreamWriter (request.GetRequestStream)
                schrijver. Schrijf (gegevens)
            Beëindig Gebruikend
            Gebruikend reactie als HttpWebResponse = request.GetResponse ()
                Gebruikend lezer als Nieuwe StreamReader (response.GetResponseStream ())
                    Terugkeer reader.ReadToEnd ()
                Het Gebruiken van het eind
            Het Gebruiken van het eind
        Eind als
        Terugkeer ""
    De Functie van het eind

De Klasse van het eind
Andere oplossingen  
 
programming4us programming4us