gpt4 book ai didi

reactjs - Next.js |有没有办法呈现 .xml 文件?

转载 作者:行者123 更新时间:2023-12-03 22:47:39 26 4
gpt4 key购买 nike

我试图在指向 www.example.com/sitemap.xml 时呈现一个 XML 文件.由于项目是使用 Next.js 开发的,因此路由使用存储在 pages 目录中的 js 文件:

  • example.com/help -> help.js
  • example.com/info -> info.js

  • 那么,有没有办法通过避免访问后端来实现这一目标?

    最佳答案

    JS版
    /pages/sitemap.xml.jsx

    import React from 'react'

    class Sitemap extends React.Component {
    static async getInitialProps({ res }) {
    res.setHeader('Content-Type', 'text/xml')
    res.write(`<?xml version="1.0" encoding="UTF-8"?>
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
    ...
    </urlset>`)
    res.end()
    }
    }

    export default Sitemap
    TS 版
    /pages/sitemap.xml.tsx
    import { GetServerSideProps } from 'next'
    import React from 'react'

    const Sitemap: React.FC = () => null

    export const getServerSideProps: GetServerSideProps = async ({ res }) => {
    if (res) {
    res.setHeader('Content-Type', 'text/xml')
    res.write(`<?xml version="1.0" encoding="UTF-8"?>
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

    </urlset>`)
    res.end()
    }
    return {
    props: {},
    }
    }

    export default Sitemap
    :D

    关于reactjs - Next.js |有没有办法呈现 .xml 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64936872/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com