问题描述
我在我从未遇到过的python代码中遇到了这个奇怪的错误。有人可以向我解释我将要做什么吗? 我正在尝试发展Alexa技能。 代码逻辑:如果用户已订阅,请说“您已订阅”,否则发送订阅请求。
class GoogleIntentHandler(AbstractRequestHandler):
def can_handle(self,handler_input):
return ask_utils.is_intent_name("GoogleIntent")(handler_input)
def handle(self,handler_input):
in_skill_response=in_skill_product_response(handler_input)
if in_skill_response:
subscription=[ l for l in in_skill_response.in_skill_products
if l.reference_name == "GoogleTarget"]
if is_entitled(subscription): #return true or false
try:
return (
handler_input.response_builder
.speak("You are subscribed")
.response
)
except Exception as error:
logger.info("Error: {}".format(error))
raise
else:
return handler_input.response_builder.add_directive(
SendRequestDirective(
name="Buy",payload= {
InSkillProduct: {
"productId": "amzn1.adg.product.0c.....6b1ffa",}
},token= "correlationToken")
).response
else:
pass
错误:Runtime.MarshalError: Unable to marshal response: keys must be str,int,float,bool or None,not type
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)