如何在使用 summernote 和 laravel 发送 html 电子邮件时停止 htmlentites?
How to stop htmlentites when use summernote and laravel to send html e-mail?
我在使用 Laravel 5.1 和 summernote 时遇到问题。我正在使用 summernote 撰写一封电子邮件,我将通过 angular.js 发送到 laravel 5.1 API.
我已尽我所能进行调试,但我似乎无法在 HTML 正确呈现的代码中发送电子邮件。
消息源正确显示电子邮件正在 HTML 中发送,但不知何故,电子邮件正文一直被转换为 htmlentities,然后 HTML 代码显示在电子邮件正文中收到。
我在Laravel的邮件发送命令如下
$params = json_decode(file_get_contents('php://input'),true);
$body = $params['body'];
$to_address = $params['to'];
$subject = $params['subject'];
Mail::send(['html' => 'emails.send_email'], ['body'=>$body], function ($message) use ($to_address, $subject){
$message->from($to_address);
$message->subject($subject);
$message->to($to_address);
});
我在summernote中尝试过的正文文本很简单,
Test
Test
test<br>test
消息源中有这个,这导致我遇到 htmlentities 问题。
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit
<body>
test<br><br>test<br>
</body>
用于收集 summernote 详细信息的 Angular.js 代码
sendEmail($scope.to, $scope.subject, $scope.body).then(function(){
// Clear out the compose
$scope.subject = '';
$scope.body = '';
$scope.success_message_sent = true;
});
然后是发送函数
$scope.sendEmail = function(to, subject, body) {
var deferred = $q.defer();
var data = {
'to': to,
'subject': subject,
'body': body
};
$http.post('http://'+ remoteServer +'/api/send_email', data)
.success(function() { deferred.resolve(); })
.error(function() { deferred.reject("Failed to send message");
});
return deferred.promise;
我正在使用 Mandrill 发送电子邮件。
如有任何帮助,我们将不胜感激。
谢谢
我认为这个问题来自您的模板:
在您的 emails.send_email.blade.php
中使用 {!! $body !!}
来防止 htmlentities 问题
我在使用 Laravel 5.1 和 summernote 时遇到问题。我正在使用 summernote 撰写一封电子邮件,我将通过 angular.js 发送到 laravel 5.1 API.
我已尽我所能进行调试,但我似乎无法在 HTML 正确呈现的代码中发送电子邮件。
消息源正确显示电子邮件正在 HTML 中发送,但不知何故,电子邮件正文一直被转换为 htmlentities,然后 HTML 代码显示在电子邮件正文中收到。
我在Laravel的邮件发送命令如下
$params = json_decode(file_get_contents('php://input'),true);
$body = $params['body'];
$to_address = $params['to'];
$subject = $params['subject'];
Mail::send(['html' => 'emails.send_email'], ['body'=>$body], function ($message) use ($to_address, $subject){
$message->from($to_address);
$message->subject($subject);
$message->to($to_address);
});
我在summernote中尝试过的正文文本很简单,
Test
Test
test<br>test
消息源中有这个,这导致我遇到 htmlentities 问题。
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 7bit
<body>
test<br><br>test<br>
</body>
用于收集 summernote 详细信息的 Angular.js 代码
sendEmail($scope.to, $scope.subject, $scope.body).then(function(){
// Clear out the compose
$scope.subject = '';
$scope.body = '';
$scope.success_message_sent = true;
});
然后是发送函数
$scope.sendEmail = function(to, subject, body) {
var deferred = $q.defer();
var data = {
'to': to,
'subject': subject,
'body': body
};
$http.post('http://'+ remoteServer +'/api/send_email', data)
.success(function() { deferred.resolve(); })
.error(function() { deferred.reject("Failed to send message");
});
return deferred.promise;
我正在使用 Mandrill 发送电子邮件。
如有任何帮助,我们将不胜感激。
谢谢
我认为这个问题来自您的模板:
在您的 emails.send_email.blade.php
中使用 {!! $body !!}
来防止 htmlentities 问题