2019-08-31周报
<h3>ERP系统对接</h3>
<p>接三方接口,数据库对应表最好加个字段记录返回信息,还有记录是否请求成功</p>
<p>对于入队成功,又不想推erp的订单,判断出来后,直接ack确定消费掉,防止队列阻塞</p>
<p>消费者订阅队列后,basic_qos中prefetch_count参数设置消费消息条数,如为1,则只消费一条,消费完才可以继续向此消费之投递信息</p>
<p>AMQP模块包含了一个消息确认(message acknowledgements)的概念:即ack,消费者消费完之后返回给队列的一个回执,消息代理收到回执后,消息才会从队列中删除
$channel->basic_qos(null, 1, null); 在同一时间,不要发送超过1条消息消费给同一个消费者,直到他消费并做出响应</p>
<p>业务逻辑处理尽可能抽到service层,然后再controller调用</p>
<h3>请求</h3>
<p>预检请求
前后端分离,产生跨域问题
浏览器限制跨域请求两种方式:
1.浏览器限制发起请求
2.跨域请求可以正常发起,但返回结果被浏览器拦截
一般是第二种,但是请求已经到服务器,并可能对数据操作过,但返回结果又被浏览器拦截,我们就获取不到结果,但数据库的数据又有了影响
所以浏览器必须先使用OPTIONS方法发起一个预检请求,从而获知服务器是否允许该跨域请求:如果允许,就发送带数据的真实请求;如果不允许,则阻止发送带数据的真实请求</p>