首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

微信 API 中调用客服消息接口提示错误返回限制

错误的信息如下:errcode=45015, errmsg=response out of time limit or subscription is canceled rid: 5f8fd8b7-0f8aa1a9...用土话来说,就是你的客服消息不是你想法就可以发的,微信限制公众号主动发送消息的能力。这 48 小时的定义为:用户 A,发送了一个消息给公众号,公众号会回复消息给客户 A。...通常这种情况是在异步模式下,因为你的服务器可能没有办法做到在 5 秒内回复消息给客户,那么你需要调用这个客服接口。但是你又不能等个 10 天半个月的再回复。这个回复的消息应该是在 48 小时内。...用更土的话说,如果你的微信公众号用户在 48 小时内没有和你有过什么互动,你就不能主动发消息给你的用户。解决办法这个问题通常出现在测试阶段,解决办法就是用你的账号关注公众号。...然后那拿你的账号发个消息给你的公众号,那么你就可以调用接口进行消息回复给你的这个客户了。这个解释是不是会清楚点呢?https://www.ossez.com/t/api/14323

1K20
您找到你想要的搜索结果了吗?
是的
没有找到

Laravel手动返回错误码示例

设想到一个情景,如果新增数据库时用户提交的数据正确,也就是通过了验证,但是添加数据库时发生错误,比如: if(!...$users- save()){ //新增数据库时发生错误 } 那么需要返回错误信息,这个时候怎么手动呢?...找到了一个函数,特此记录,感觉够用了: $errors=array( 'message'= "新增数据库发生错误,请稍后再试" ); // $errors 定义返回错误信息 // 422 表示返回该信息的状态码...return new JsonResponse($errors, 422); 这样在前台就能接受到该错误信息了,如下: $.ajax({ success:function(){}, error...:function(){ // 由于返回422的错误状态码,所以会自动调用ajax的错误函数,不需要人为再手工判断 } }); 以上这篇Laravel手动返回错误码示例就是小编分享给大家的全部内容了

1.4K41

什么是好的错误消息?

错误信息是我们在线日常生活的一部分。每次服务器故障或没有网络,或忘记在表格中添加一些信息,我们就会收到错误信息。"出错了" 是常见的做尘。但是什么出错了?发生了什么?...在介绍好的提示之前,我们先来看一下什么是不好的错误提示。 不好的错误提示 图片 Inappropriate tone 不恰当的语气: 想象一下,一个医生在做一个手术,然后突然说 "哎呀!...Technical jargon 专业术语: 程序员喜欢把一些专业术语用在错误提示里面。例如:你不能获取我的数据?我的凭证被拒绝了?...好的错误提示 图片 Say what happened and why: 说明出错的原因:让用户清楚的知道发生错误的原因,可以通过视觉和文字的结合来完成。解释用户为什么会出现这个错误。...即使是技术原因,也要说明是我们的原因,而不是用户操作错误。比如:「由于技术上的原因,暂时无法连接到你的账户」。 Provide reassurance 提供保证:比如「你的修改已被保存到草稿」。

1.5K30

14-RabbitMQ高级特性-Return返回消息

Return返回消息 Return消息机制 Return Listener 用于处理一些不可路由的消息 我们的消息生产者,通过指定一个Exchange和RouteKey, 把消息送达到某一个队列中去,然后我们的消费者监听队列...,进行消费处理操作 但是在某些情况下, 我们在发送消息的时候, 当前的Exchange不存在, 或者指定的路由key, 路由不到, 这个时候我们就需要监听这些不可达的消息, 就需要使用Return Listener...在基础API中有一个关键的配置项 Mandatory; 如果为true, 则监听器会接收到路由不可达的消息, 然后进行后续处理, 如果为false, 那么broker端会自动删除该消息 Return消息机制流程...Return消息机制代码实现 消费者 package com.dance.redis.mq.rabbit.returnlistener; import com.dance.redis.mq.rabbit.RabbitMQHelper...exchangeName, routingKey3, mandatory, null, msg.getBytes()); } } 测试 启动消费者 启动生产者 可以看到, 没有匹配到路由键的消息会被监听回来

34930

如何设计API返回码(错误码)?

—3— 参数约定 虽说是返回码设计,但是只有code是不行的,还要有对应的message,让人可以看懂。 参考HTTP状态码的思路,我们对错误码进行分段。...—4— 个性化Message 通常我们的Message都是写给工程师看的,但是在不同的场景下,同样的错误,可能需要给用户看到不一样的错误提示。...比方说20000-29999表示订单创建失败: 20001,订单创建失败,存在进行中的订单 20002,订单创建失败,上一个订单正在排队创建中 这两种错误情况如果是给用户看,可能就只适合看到:很抱歉,您有一个正在进行中的订单...我们可以把转译的消息配置到数据库,并缓存到Redis或者API本机。 然后在请求处理结束即将返回的时候,根据application_id+code,去匹配替换message。...这样我们就可以让手机APP的用户、微信小程序的用户、网页下单的企业用户看到不同的消息

78610

如何设计API返回码(错误码)?

分段 分段描述 1XX 信息,服务器收到请求,需要请求者继续执行操作 2XX 成功,操作被成功接收并处理 3XX 重定向,需要进一步的操作以完成请求 4XX 客户端错误,请求包含语法错误或无法完成请求...,我们对错误码进行分段 返回码值 说明 0 成功 99999 系统发生未知异常 10000-19999 参数校验错误 20000-29999 A步骤执行失败 30000-39999 B步骤执行失败 通过这样的设计...四、个性化Message 通常我们的message都是写给工程师看的,但是在不同的场景下,同样的错误,可能需要给用户看到不一样的错误提示。...但是对于API来说,返回的信息又必须是准确的,但用户看到的就必须转译,这个转译的工作调用方可以做,但是通常API提供者来提供个性化的Message能力会更好 我们可以把转译的消息配置到数据库,并缓存到Redis...这样我们就可以让手机APP的用户、微信小程序的用户、网页下单的企业用户看到不同的消息 五、返回信息的统一处理 有了统一的code,我们就可以通过Nginx或者APM工具统计API请求Code数量及分布信息

5.6K30
领券