gpt4 book ai didi

ssl - 使用 SSL 连接发送 CDO 电子邮件

转载 作者:太空宇宙 更新时间:2023-11-03 12:57:39 26 4
gpt4 key购买 nike

我有一个 asp 页面,它使用 CDO 通过电子邮件发送表单的详细信息。到目前为止,我已经通过与 hmail 服务器的明确连接使用 smtp 端口 25 完成了此操作。

我现在需要使用 SSL 连接。我已经创建了一个安全证书并将 hmail 服务器设置为使用端口 465 和 ssl。

但是,由于某些原因,当我尝试发送表单时出现错误 500,并且电子邮件未发送。

我也尝试过使用端口 587,但它也不起作用。

我使用的CDO代码如下:

If request.Form("submit") <> "" then

Set myMail=CreateObject("CDO.Message")
myMail.Subject="xxxxxxx"
myMail.From=Request.Form("email")
myMail.To= "xxxxxxxxxxx"

myMail.TextBody = "Name:"& Request.Form("name")& vbcrlf & vbcrlf & _

"Email:" & Request.Form("email") & vbcrlf & vbcrlf & _

"Telephone:" & Request.Form("telephone") & vbcrlf & vbcrlf & _

"Location:" & Request.Form("location") & vbcrlf & vbcrlf & _

"Other location:" & Request.Form("other_location") & vbcrlf & vbcrlf & _

"Comments:" & Request.Form("comments")

myMail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing")=2
'Name or IP of remote SMTP server
myMail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
="127.0.0.1"
'Server port
myMail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") _
=465
MyMail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
myMail.Configuration.Fields.Update
myMail.Send
set myMail=nothing

有没有人知道哪里可能出错?

谢谢。

最佳答案

我在使用旧版 ASP 代码时遇到了同样的问题。以下代码适用于亚马逊。注意:只有端口 25 或 465 似乎可以工作并且 smtpusessl = 1(在 VBScript 中为 True==-1)

' Create Connection
Function GetEmailConnection ()
Set oMail = CreateObject("CDO.Message")
Set GetEmailConnection = oMail
End function
Function GetConfiguration()
Set oConfig = CreateObject("CDO.Configuration")
Set GetConfiguration = oConfig
End Function

' Send Email

Sub SendEmail (subject, fromAddress, toAddress, body)
set objMessage = GetEmailConnection()


Set objConfiguration = GetConfiguration()

Set fields = objConfiguration.Fields

Const cdoSendUsingPort = 2

With fields
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = cdoSendUsingPort
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "email-smtp.us-east-1.amazonaws.com"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = 1
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 '
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 'basic
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "user"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 10
.Update
End With
With objMessage
set .Configuration = objConfiguration
.Subject = subject
.From = fromAddress
.To= toAddress
.TextBody = body
.Send
End With
set objMessage = nothing
end Sub

关于ssl - 使用 SSL 连接发送 CDO 电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13531934/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com