URL 中西里尔字符的 JavaScript 问题

时间:2021-04-28 17:11:43

标签: javascript reactjs wordpress woocommerce next.js

我使用 nextJS 为 woocommerce 商店制作了一个前端应用程序。因此,我正在构建 URL 中包含西里尔符号的单个产品页面。

我正在根据例如 example.com/produkt/кроп-топ-atlanta-1991-grey 的查询提出产品请求。我正在获取 slug 并将其作为查询的参数传递给 woocommerce API,但始终返回 404。我尝试使用拉丁字符执行我的函数,它们对请求没有问题。 encodeURIComponent() 和 decodeURIComponent() 但我仍然得到 404。我会在这里粘贴我的部分代码,如果有人给我建议如何解决这个问题,我将非常感谢。

import { withRouter } from "next/router";
import axios from "axios";

const product = ({ slug }) => {
  const [product, setProduct] = useState(undefined);
  const [error, setError] = useState(false);
  const productUrl = `/wp-json/wc/v3/products&slug=${slug}`;
  useEffect(async () => {
    await fetch(baseUrl + productUrl + AUTH_PARAMS).then((res) =>
      console.log(res)
    );
    await axios
      .get(baseUrl + productUrl + AUTH_PARAMS)
      .then((res) => console.log("res", res))
      .catch((err) => console.log("err", err));
  }, [product, error]);

product.getInitialProps = async ({ query }) => {
  const { slug } = query;
  return { slug };
};

export default withRouter(product);

0 个答案:

没有答案