小编Tho*_*eng的帖子

通过AWS SES发送后,"发送"和"退回"SNS通知

我有这些非常尴尬的情况,也许我误解了这些通知的使用.

我已经将AWS SES设置为在发送电子邮件后发布到主题.我已将其设置为发布Bounce,Complaint和Delivery.

我所做的是,当我在我的网络服务器上收到SNS通知时,我将在我的数据库中查找该消息ID,然后更改其状态.例如,如果传递通知到达,我将消息状态更改为"已传递".如果退回通知到达,我将消息状态更改为"退回".

但是,现在我注意到这些电子邮件中的许多都向我发送了两个通知,并且它们并不总是按特定顺序排列.有时一个比另一个早,有时反之亦然.

因此,如果"Bounce"首先到达,然后"Delivered",我在数据库中对此消息的状态将变为"Delivered",我认为这可能会产生误导.

第一个问题 如何检查这些通知的顺序?

第二个问题 我觉得我误解了"交付"通知.我曾尝试阅读AWS文档,但说实话,它们并不是地球上最好的文档.谁能给我一个简单明了的解释呢?

第三个问题 我是否正确处理这些通知?或者,还有更好的方法?

非常感谢您的帮助.

谢谢!

-

为了您的信息,我附上了一个样本,其中包含一组2个通知.一次弹跳,一次交付.

{
    "Type": "Notification",
    "MessageId": "2efb9ee6-6bd5-576d-b80d-d0f5e3f44f23",
    "TopicArn": "arn:aws:sns:us-east-1:#####:ses_beamstyle_com_hk",
    "Message": {
        "notificationType": "Delivery",
        "mail": {
            "timestamp": "2015-07-05T19:30:40.441Z",
            "source": "<no-reply@bs.com.hk>",
            "messageId": "xxxxx
            "destination": [
                "<ooto@simulator.amazonses.com>"
            ]
        },
        "delivery": {
            "timestamp": "2015-07-05T19:30:41.101Z",
            "processingTimeMillis": 660,
            "recipients": [
                "ooto@simulator.amazonses.com"
            ],
            "smtpResponse": "250 2.6.0 Message received",
            "reportingMTA": "a9-140.smtp-out.amazonses.com"
        }
    },
    "Timestamp": "2015-07-05T19:30:41.179Z",
    "SignatureVersion": "1",
    "Signature": "xxxxx",
    "SigningCertURL": "xxxxx",
    "UnsubscribeURL": "xxxxx"
}





{
    "Type": "Notification",
    "MessageId": "b6e8bb7d-4e73-52ae-b690-f56ec6527ce5",
    "TopicArn": "arn:aws:sns:us-east-1:#####:ses_beamstyle_com_hk",
    "Message": {
        "notificationType": …
Run Code Online (Sandbox Code Playgroud)

php amazon-web-services amazon-sns email-notifications aws-sdk

7
推荐指数
1
解决办法
2346
查看次数

带有许多参数的“长”GET 请求

我正在实现一个宁静的 API 接口,并且想知道一些限制和最佳实践。

我有一个 GET 请求,它从数据库表中检索一系列条目。

然而我的问题是,我允许我的调用者传入一组相当复杂的标准来过滤掉他们想要的东西。

我的情况是:

  • 序列化为查询字符串后,我的查询字符串远远超过了 GET 请求的限制。
  • 我想维护一个 RESTful API,并且由于我正在检索记录,因此我似乎应该使用 GET 请求。

如果我不想违反 RESTful API,但想实现传递长查询参数字符串的目标,那么解决这个问题的最佳实践是什么?

欢迎任何建议。谢谢!

rest get httprequest maxlength restful-url

6
推荐指数
1
解决办法
6528
查看次数

gulp-clean-css cannot set the right relative path for url() for assets such as fonts and images

I use NPM and Gulp for my package manager and build system.\nI have installed "gulp-sass" to support sass, and "gulp-clean-css" so that I can @import css files inline.\nI capture my SCSS files in "_frontend/scss/**/*", and compiles that into a single file as "assets/frontend/css/styles.css".\nIn the output location, I have other important resources folders that are siblings of "css": "fonts", "img", and "js".

\n\n

My problem is I cannot get the url() relative paths to target correctly when I\'m importing a "*.css" …

npm gulp gulp-sass clean-css gulp-clean-css

5
推荐指数
1
解决办法
2798
查看次数

Laravel 5.3 - 以orWhere开头的查询生成器

最近Laravel发布了5.3版本.

以下链接中有5.2到5.3的升级说明:https: //laravel.com/docs/5.3/upgrade#upgrade-5.3.0

Eloquent范围现在尊重范围约束的主要布尔值.例如,如果您使用orWhere约束启动范围,则不再将其转换为normal.如果您依赖于此功能(例如,在循环中添加多个或者约束),则应验证第一个条件是否正常,以避免任何布尔逻辑问题.

如果您的范围从约束开始,则不需要采取任何操作.请记住,您可以使用查询的toSql方法验证查询SQL:

这似乎使事情变得更难,升级只会增加它的限制.

我们有一个内部包,为了保持代码简单和尽可能简洁,有一部分依赖于使用orWhere()启动查询,并在递归方法中使用它以及闭包概念.如您所知,递归方法最好保持简洁.

根据现在的升级说明,它肯定会在Laravel 5.3上失败

我只是想知道是否有人知道为什么这种行为被删除的原因?

谢谢!

更新:

我已将我们的系统迁移到Laravel 5.3.我确认这只会在Eloquent构建器中受影响,而不会在Query Builder(以前称为"Fluent Builder")中受到影响.

甚至提交(这是一个很多变化的地狱)只在Eloquent\Builder上. https://github.com/laravel/framework/issues/14829

无论如何,为了安全起见,我建议做相应的调整.这就是我们所做的,虽然我们知道它没有破坏我们的代码(截至今天).

php query-builder laravel laravel-5.2 laravel-5.3

5
推荐指数
1
解决办法
1836
查看次数

AWS CloudFormation - 将新证书添加到现有侦听器

我拥有的是一个平台堆栈,可能还有多个 Web 应用程序堆栈(每个堆栈代表一个 Web 应用程序)。平台堆栈部署了一个 ECS 平台,允许托管多个 Web 应用程序,但实际上没有任何 Web 应用程序。这只是一个平台。然后,每个Web应用程序堆栈代表一个Web应用程序。

我的平台堆栈模板中的 HTTPS 侦听器之一是这样的。基本上,我在端口 443 上有一个 HTTPS 侦听器,并将携带一个默认证书(根据要求,您至少需要一个证书来创建 https 侦听器):

"BsAlbListenerHttps": {
  "Type": "AWS::ElasticLoadBalancingV2::Listener",
  "Properties": {
    "Certificates": [{
      "CertificateArn": {
        "Ref": "BsCertificate1"
      }
    }],
    ...
    "Port": "443",
    "Protocol": "HTTPS"
  }
},
...
Run Code Online (Sandbox Code Playgroud)

现在,假设我想创建一个新的 Web 应用程序(例如 www.example.com),我会部署 Web 应用程序堆栈,指定一些参数,显然,我必须创建一堆新资源。但与此同时,我必须修改当前的“BsAlbListenerHttps”。

我能够将当前侦听器(使用导入和导出)导入到我的 Web 应用程序堆栈中。但我想做的是将 www.example.com 的新证书添加到侦听器。

我尝试环顾四周但未能找到任何答案。

有谁知道如何做到这一点?感谢您的帮助。谢谢你!

listener ssl-certificate amazon-web-services amazon-elb aws-cloudformation

5
推荐指数
1
解决办法
3583
查看次数

JQuery:如何检查元素是否只有这个类,而没有其他类?

我正试图想出一种选择元素2的方法.

<div class="wrapper">
    <div class="qe datepicker">Element 1</div>
    <div class="qe">Element 2</div>
    <div class="qe fileuploader">Element 3</div>
    <div class="qe fileuploader datepicker">Element 4</div>
</div>
Run Code Online (Sandbox Code Playgroud)

虽然我没有测试过这段代码,但是我可以做这样的事情,但它有点愚蠢,我想要一种更通用的方式:

var wanted_elements = $('.wrapper').children('.qe').not('.datepicker').not('.fileuploader');
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?提前致谢!

javascript jquery select class

2
推荐指数
1
解决办法
3518
查看次数

'hasClass'和'is'之间的区别?另外,替代返回Jquery元素呢?

可能重复:
jQuery .hasClass()vs .is()

HTML代码:

<div class="results">
    <div class="table">
        <form class="tr" action="#" method="post">
            <div class="td">
                <input class="datepicker" type="text">
            </div>
            <div class="td">
                <input class="datepicker" type="text">
            </div>
            <div class="td">
                <input type="text">
            </div>
        </form>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

JS代码:

$('.results').find('input:text').each(function(){
    var element = $(this);
    var b = element.hasClass('.datepicker');
    var c = element.is('.datepicker');
}
Run Code Online (Sandbox Code Playgroud)

我的问题:

'is'和'hasClass'应该在找到包含类"datepicker"的元素时返回true,对吗?

不知何故,事实并非如此.'hasClass'返回false,'is'返回true.

此外,我一直在寻找一个解决方案来做一些链接jquery调用.但'hasClass'和'is'都只返回一个布尔值.是否有一个返回$(Jquery)元素的JQuery函数,所以我可以做这样的事情?我已经尝试了"过滤"功能,但似乎无法正常工作.

element.SomeFunctionToDigUpAnElementWithClass('datepicker').DoSomeCoolStuff();
Run Code Online (Sandbox Code Playgroud)

================================================== ==============

html javascript jquery filter

1
推荐指数
2
解决办法
1769
查看次数