我目前正在尝试将Stripe整合到一个小网站中。
我可以在Firebug中看到此get请求正确运行
https://checkout.stripe.com/api/bootstrap?locale=en&key=******************
然而,另一个请求带有NetworkError:400 Bad Request
https://checkout.stripe.com/api/color?image_url=https%3A%2F%2Fwww.*******.com%2Fassets%2Fimages%2Flayout-images%2Fstripe-logo.jpg&key=
在浏览器中打开URL时的JSON响应是
{
"error": {
"type": "invalid_request",
"message": "Unable to perform color detection."
}
}
消息上的一些帖子表明它不应该担心。但我还没有找到任何关于具体错误的信息。是否有人知道造成这个错误的原因是什么?
答案 0 :(得分:17)
如果图片网址无法公开访问,则可能会发生这种情况,因为Stripe必须能够从其服务器请求图像。如果您运行的应用程序的本地副本无法从外部访问,或者它位于VPN或身份验证之后,则会发生这种情况。
答案 1 :(得分:11)
所以我改变了处理程序以包含另一个颜色参数,它似乎解决了这个问题。
var handler = StripeCheckout.configure({
key: '******************',
image: '/assets/images/layout-images/stripe-logo.jpg',
color: 'black',
token: function(token) {
// Use the token to create the charge with a server-side script.
// You can access the token ID with `token.id`
}
});
很奇怪,因为我不太确定为什么它没有被包含在文档中。
答案 2 :(得分:2)
我得到了同样的错误,设置颜色对我没用。 我将图像的路径更改为Stripe文档中给出的路径:
已更改
https://stripe.com/template/img/documentation/checkout/marketplace.png
到
https://stripe.com/img/documentation/checkout/marketplace.png