I keep geting
The page at (domain) was not allowed to display insecure content from (local host)
Any ideas what’s causing this
I have tried everything
server
app.post("/checkout", async (req, res) => {
const items = req.body.items;
let lineItems = [];
items.forEach((item) => {
lineItems.push({
price: item.id,
quantity: item.quantity,
});
});
const session = await stripe.checkout.sessions.create({
line_items: lineItems,
mode: "payment",
success_url: "http://localhost:3000/success",
cancel_url: "http://localhost:3000/store",
shipping_address_collection: { allowed_countries: ["GB"] },
shipping_options: [
{
shipping_rate_data: {
type: "fixed_amount",
fixed_amount: { amount: 195, currency: "GBP" },
display_name: "Standard shipping",
delivery_estimate: {
minimum: { unit: "business_day", value: 3 },
maximum: { unit: "business_day", value: 5 },
},
},
},
{
shipping_rate_data: {
type: "fixed_amount",
fixed_amount: { amount: 495, currency: "GBP" },
display_name: "Next Day Shipping",
delivery_estimate: {
minimum: { unit: "business_day", value: 1 },
maximum: { unit: "business_day", value: 2 },
},
},
},
],
});
res.send(
JSON.stringify({
url: session.url,
})
);
});
app.listen(4000, () => console.log("Listening on port 4000!"));
as you can see from about i have attached my server and frontend i also have checked over the stripe docs and it looks like i have done everything requested
client
const checkout = async (e) => {
e.preventDefault();
await fetch("https://localhost:4000/checkout", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({ items: cart.items }),
})
.then((response) => {
return response.json();
})
.then((response) => {
if (response.url) {
window.location.assign(response.url); // Forwarding user to Stripe
}
});
};