网站重定向到Chrome中的登录页面但不是IE?

时间:2015-05-19 00:56:16

标签: asp.net vb.net google-chrome

我正在处理一个小网站上的各种错误修复,有一件事让我很困惑。

是否有一个简单的解释,为什么有些网页会重定向到登录页面而不是实际目的地... 但仅限于使用Chrome?

示例:此页面应检查我们的邮件列表中的输入,并添加详细信息或返回一条消息,表明它们已在列表中。它在IE浏览器中运行良好(图)但是当我在Chrome中尝试它时,它会将我重定向到帐户登录页面。

HTML:

<%@ Page Language="VB" MasterPageFile="~/Standard-no-menu.master" AutoEventWireup="false" CodeFile="join-email.aspx.vb" Inherits="JoinEmail" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true" />
<style type="text/css"><!-- @import url("/update-details.css"); --></style>
<script type="text/javascript" language="javascript" src="js/JScript.js"> </script>
<script language="javascript" type="text/javascript">


function validateForm()
{
    if (aForgotPwd.style.display != null && aForgotPwd.style.display.toString() != "none") {
        var emailEle = document.getElementById("<%= txtEmail.ClientID %>");
        emailEle.focus();
        return false;
    }

     if(document.getElementById('<%= txtEmail.ClientID %>').value=="")
    {
        alert("Please enter a value in the field \"Email\".");
        document.getElementById('<%= txtEmail.ClientID %>').focus();
        return (false);
    }

    validemail=0;
    var checkStr = document.getElementById('<%= txtEmail.ClientID %>').value;
    for (i = 0; i < checkStr.length; i++)
    {
        if(checkStr.charAt(i)=="@")
            validemail |= 1;
        if(checkStr.charAt(i)==".")
            validemail |= 2;
    }
    if(validemail != 3)
    {
        alert("Please enter a valid email address.");
        document.getElementById('<%= txtEmail.ClientID %>').focus();
        return (false);
    }


    if(document.getElementById('<%= txtFirstName.ClientID %>').value=="")
    {
        alert("Please enter a value in the field \"First Name\".");
        document.getElementById('<%= txtFirstName.ClientID %>').focus();
        return (false);
    }

    if(document.getElementById('<%= txtLastName.ClientID %>').value=="")
    {
        alert("Please enter a value in the field \"Last Name\".");
        document.getElementById('<%= txtLastName.ClientID %>').focus();
        return (false);
    }





}    


</script>
<h1>Join Global PC Mailing List
    </h1>
<div class="update-message"><asp:Label ID="lblMessage" runat="Server"></asp:Label></div>

<asp:Panel ID="pnlCreateAccount" runat="server">


<div class="update-row">
<div class="update-mandatory">*</div>
<div class="update-label">Email Address:</div>
<div class="update-field"><asp:TextBox cssClass="textbox" ID="txtEmail"  MaxLength="255" width="350" runat="server"></asp:TextBox><b><a id="aForgotPwd" href="/forgotten-password.aspx" style="display:none">&nbsp;Forgot password?</a></b></div>
</div>
<div class="update-row">
<div class="update-mandatory">&nbsp;</div>
<div class="update-label">&nbsp;</div>
<div class="update-field">We will never give your email address to anyone. Read our <a runat="server" href="~/privacy.aspx">privacy policy</a></div>
</div>
<div class="update-row">
<div class="update-mandatory">&nbsp;</div>
<div class="update-label">Company Name:</div>
<div class="update-field"><asp:TextBox cssClass="textbox" name="txtAccountName" ID="txtAccountName" MaxLength="40" width="350" runat="server"></asp:TextBox>
    </div>
</div>
<div class="update-row">
<div class="update-mandatory">*</div>
<div class="update-label">First Name:</div>
<div class="update-field"><asp:TextBox cssClass="textbox" name="txtFirstName" ID="txtFirstName" MaxLength="255" width="350" runat="server"></asp:TextBox></div>
</div>
<div class="update-row">
<div class="update-mandatory">*</div>
<div class="update-label">Last Name:</div>
<div class="update-field"><asp:TextBox cssClass="textbox" name="txtLastName" ID="txtLastName" MaxLength="255" width="350" runat="server"></asp:TextBox></div>
</div>

<h1>Choose Your Email Subscriptions</h1>

<div class="update-row">
    <div style="float:left">
        <div class="update-mandatory">&nbsp;</div>
        <div class="update-label">Subscribe to General Newsletters:</div>
        <div class="update-checkbox"><asp:CheckBox ID="chkGenernalNewsletters" runat="server"></asp:CheckBox></div>
    </div>
    </div>
<div class="update-row">
    <div class="update-mandatory">&nbsp;</div>
    <div class="update-label">&nbsp;</div>
    <div class="update-field">
        <div class="green-button">
            <asp:LinkButton ID="btnRegister" OnClientClick="return validateForm();" AlternateText="Join Up" Text="Join Up" runat="server" />
        </div>
    </div>
</div>
    </asp:Panel>
</asp:Content>

VB.NET

Imports DataAccessLayer
Imports System.Data
Imports System.Net
Imports System.Net.Mail

Imports com.verticalresponse.api

Partial Class JoinEmail
    Inherits System.Web.UI.Page
    Dim c As GPCUser
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Master.Page.Title += " | Register"
        If TypeOf Session("Customer") Is GPCUser Then
            c = CType(Session("Customer"), GPCUser)
            'Response.Redirect("update-details.aspx")
        Else
            c = New GPCUser
        End If

        If c.AccountNo = 0 Or c.AccountNo = CInt(System.Configuration.ConfigurationManager.AppSettings("WebsiteAccount")) Then
        Else
            Response.Redirect("update-details.aspx")
            Exit Sub
        End If

        If Not Page.IsPostBack Then

            Dim dt As DataTable = Nothing
            dt = SqlHelper.ExecuteDataset(System.Configuration.ConfigurationManager.AppSettings("dbConn"), "x_ww_spGetCustomer", Request("custID")).Tables(0)
            If Not dt Is Nothing Then
                If dt.Rows.Count > 0 Then
                    Dim dr As DataRow = dt.Rows(0)
                    txtAccountName.Text = dr("AccountName")
                    txtFirstName.Text = dr("FirstName")
                    txtLastName.Text = dr("LastName")
                    txtEmail.Text = dr("Email")

                    If Request("custID") > 0 Then
                        Dim subscriptions As ContactSubscriptions = New ContactSubscriptions(Request("custID"))
                        ' chkComputerPromotions.Checked = subscriptions.IsComputerPromotions
                        'chkElectronicPromotions.Checked = subscriptions.IsElectronicPromotions
                        chkGenernalNewsletters.Checked = subscriptions.IsGenernalNewsletters
                    End If

                End If
            End If
        End If


    End Sub

    Protected Sub btnRegister_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnRegister.Click

        '          c.CreateCustomerDetails(txtAccountName.Text, txtFirstName.Text, txtLastName.Text, txtEmail.Text, txtAddress.Text, txtSuburb.Text, txtCityTown.Text, txtPostcode.Text, txtPhone.Text, txtMobile.Text, lstCountry.SelectedValue)
        '                c.GeneratedPassword = txtPassword.Text
        '                GPCUser.AddUpdateCustomer(c)
        '                ' Save the subscription details
        '               
        'If Request("custID") > 0 and Request("AccNO") > 0 Then
        Dim subscriptions As ContactSubscriptions = New ContactSubscriptions(Request("custID"))
        'subscriptions.IsComputerPromotions = chkComputerPromotions.Checked
        'subscriptions.IsElectronicPromotions = chkElectronicPromotions.Checked
        subscriptions.IsGenernalNewsletters = chkGenernalNewsletters.Checked
        subscriptions.Save()
        'End IF
        '                Session("Customer") = c

        'SendUpdateAccountEmailMessage(c.EmailCount)


        'ClientScript.RegisterClientScriptBlock(Me.GetType(), "Thanks", "alert('Your Website PC account has been created. ');", False)

        If chkGenernalNewsletters.Checked = True Then

            Dim listID As Integer = 284662333
            Dim isMember As Boolean = False


            Dim newSession As New loginArgs()
            newSession.username = "Not Relevant"

            ' Your VerticalResponse username
            newSession.password = "Not Relevant"

            'Your VerticalResponse password
            ' objLA.impersonate_user = "subaccount@emailaddress.com"; // If accessing or acting as a subaccount, uncomment this and replace it with the applicable email address.
            newSession.session_duration_minutes = "120"

            Dim [date] As DateTime = DateTime.Now



            ' This is generated by creating a Service Reference that points to the VerticalResponse WSDL. 
            Dim VRUser As New VRAPI()



            ' Let's try to log in. The login call will return a session ID, which we will use in all subsequent calls.
            Dim sessionId As String = Nothing
            Try
                sessionId = VRUser.login(newSession)


            Catch ex As System.Exception
                lblMessage.Text = ex.ToString()
            End Try

            Dim getMember As New getListMemberByEmailAddressArgs()
            getMember.session_id = sessionId
            getMember.list_id = listID
            getMember.email_address = txtEmail.Text

            Try
                VRUser.getListMemberByEmailAddress(getMember)
                isMember = True

            Catch ex As System.Exception
                isMember = False
            End Try
            If (isMember = False) Then
                Dim nMember As New ListMember()
                nMember.list_id = listID


                Dim memberData As NVPair() = New NVPair(2) {}

                memberData(0) = New NVPair()
                memberData(0).name = "email_address"
                memberData(0).value = txtEmail.Text

                memberData(1) = New NVPair()
                memberData(1).name = "first_name"
                memberData(1).value = txtFirstName.Text

                memberData(2) = New NVPair()
                memberData(2).name = "last_name"
                memberData(2).value = txtLastName.Text

                nMember.member_data = memberData

                Dim objAL As New addListMemberArgs()

                objAL.list_member = nMember
                objAL.session_id = sessionId

                Try
                    VRUser.addListMember(objAL)

                Catch ex As System.Exception
                    txtEmail.Text = ex.ToString()
                End Try

            Else
                pnlCreateAccount.Visible = False
                lblMessage.Text = "You are already on our mailing list."
                Exit Sub
            End If
        End If
        pnlCreateAccount.Visible = False
        lblMessage.Text = "you have successfully subscribed to Website PC email database."

    End Sub


    <System.Web.Services.WebMethod()> _
    Public Shared Function ValidateEmail(email As String) As String
        Dim wbClient As WebClient = New WebClient()
        Dim strUrl As String = ConfigurationManager.AppSettings("WebsiteURLFull") + "/ajax/check_email_address.aspx?Email=" + email
        Dim reqHTML As Byte()
        reqHTML = wbClient.DownloadData(strUrl)
        Dim objUTF8 As UTF8Encoding = New UTF8Encoding()
        Dim output As String = objUTF8.GetString(reqHTML)
        If String.IsNullOrEmpty(output) Then Return String.Empty
        Return output
    End Function

    Private Sub SendMessage(fromEmail As String, fromEmailName As String, _
       toEmails As String(), IsBodyHtml As Boolean, message As String, subject As String)
        Dim mail As MailMessage = New MailMessage
        mail.From = New MailAddress(fromEmail, fromEmailName)

        For Each toEmail As String In toEmails
            mail.To.Add(New MailAddress(toEmail))
        Next

        mail.Bcc.Add(fromEmail)
        mail.IsBodyHtml = IsBodyHtml
        mail.Subject = subject
        mail.Body = message
        Dim s As New SmtpClient(System.Configuration.ConfigurationManager.AppSettings("MailServer"))
        s.Send(mail)
    End Sub

    Private Sub SendUpdateAccountEmailMessage(emailCount As Integer)
        Dim subject As String = "ALERT : Website user subscribed to email database"
        Dim message As String
        message &= "Via page join-email" & vbCrLf & vbCrLf
        message += "Account No: " & Request("custID") & vbCrLf
        message += "Email : " & txtEmail.Text & vbCrLf
        message += "Account Name : " & txtAccountName.Text & vbCrLf
        message += "First Name : " & txtFirstName.Text & vbCrLf
        message += "Last Name : " & txtLastName.Text & vbCrLf
        message += "Email : " & txtEmail.Text & vbCrLf
        message += "Subscribe to General Newsletters : " & chkGenernalNewsletters.Checked & vbCrLf
        'message += "Subscribe to Computer Promotions: : " & chkComputerPromotions.Checked & vbCrLf
        'message += "Subscribe to Electronic Promotions: : " & chkElectronicPromotions.Checked & vbCrLf

        message &= vbCrLf & vbCrLf
        message += "Regards" & vbCrLf & vbCrLf & "WebsitePC Admin Team"

        SendMessage(ConfigurationManager.AppSettings("AccountDetailsUpdateEmail"), "Website PC", _
                                New String() {ConfigurationManager.AppSettings("AccountDetailsUpdateEmail")}, False, message, subject)
    End Sub

End Class

0 个答案:

没有答案