Внутренняя ошибка сервера (500) httpwebrequest - PullRequest
1 голос
/ 20 ноября 2010

System.Net.WebException: удаленный сервер вернул ошибку: (500) Внутренняя ошибка сервера. в System.Net.HttpWebRequest.GetResponse () в refill.btnRequestRefill_Click (Объект отправитель, EventArgs e)

Я получаю эту ошибку при попытке отправить форму. Вот мой код:

Protected Sub btnRequestRefill_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnRequestRefill.Click

    Try
        Dim url As String = "www.domainname.com"

        url += "lastName=" & LastName.Text
        url += "&birthDate=" & Birthdate.Text
        url += "&RxNumbers=" & RxNumber.Text
        url += "&deliveryMethod=" & deliverymethod.SelectedValue
        url += "&phone=" & PhoneNumber.Text
        url += "&email=" & Email.Text

        Dim myrequest As HttpWebRequest = TryCast(WebRequest.Create(url), HttpWebRequest)

        Dim docresponse As WebResponse = myrequest.GetResponse()
        Dim responsestream As Stream = docresponse.GetResponseStream()
        Dim objXMLDoc As New XmlDocument()
        Dim colElements As XmlNodeList
        Dim colElements2 As XmlNodeList
        Dim mywebclient As New WebClient()
        Dim a As Object
        Dim listingscount As Integer = 0

        objXMLDoc.Load(responsestream)
        colElements = objXMLDoc.GetElementsByTagName("script")

        For Each objnode As XmlNode In colElements
            Dim attCol As XmlAttributeCollection = objnode.Attributes

            If objnode.Name = "script" Then
                If attCol(0).Value = "false" Then
                    colElements2 = objXMLDoc.GetElementsByTagName("rxResponse")
                    For Each objnode2 As XmlNode In colElements2
                        Response.Write("<br/>" & objnode2.InnerText & "<br/>")
                    Next
                Else
                    Response.Write("<br/>yay it when through<br/>")

                    Dim redir, mailto, mailfrom, subject, item, body, cc, bcc, message, html, template, usetemplate, testmode
                    subject = "Refill Submit - test"

                    usetemplate = False

                    Dim msg = Server.CreateObject("CDO.Message")
                    msg.subject = subject
                    msg.to = "name@domainname.com,name@domainname.com,name@domainname.com"
                    msg.from = "name@domainname.com"

                    For Each item In Request.Form
                        Select Case item
                            Case "redirect", "mailto", "cc", "bcc", "subject", "message", "template", "html", "testmode", "__EVENTTARGET", "__EVENTARGUMENT", "__VIEWSTATE", "__EVENTVALIDATION", "btnRequestRefill","__LASTFOCUS"
                            Case Else
                                If Not usetemplate Then
                                    If item <> "mailfrom" Then body = body & item & ": " & Request.Form(item) & vbCrLf & vbCrLf
                                Else
                                    body = Replace(body, "[$" & item & "$]", Replace(Request.Form(item), vbCrLf, "<br>"))
                                End If
                        End Select
                    Next

                    If usetemplate Then 'remove any leftover placeholders
                        Dim rx As New Regex("\[\$.*\$\]")
                        body = rx.Replace(body, "")
                    End If

                    If usetemplate And LCase(Request.Form("html")) = "yes" Then
                        msg.htmlbody = body
                    Else
                        msg.textbody = body
                    End If

                    msg.send()
                    msg = Nothing
                End If
            Else
                Response.Write("<br/>" & "not script" & "<br/>")
            End If
            'Response.Write("<br/>" & objnode.Name & ": " & objnode.InnerText & "<br/>")
        Next
    Catch ex As Exception
        Response.Write("<br/>" & ex.ToString & "<br/>")

    End Try
End Su

1 Ответ

0 голосов
/ 20 ноября 2010

Я просто хотел отметить, что я забрал этот код у другого разработчика. Я узнал от компании, что раньше это предполагалось, что на самом деле отсутствовала строка запроса, которая требовалась сервисом. просто добавив url + = "querystring =" & value, это сработало.

...