fridays / next-routes

Universal dynamic routes for Next.js
MIT License
2.47k stars 230 forks source link

Problem with Persian Character #121

Closed khakestani closed 6 years ago

khakestani commented 6 years ago

Hello When I use Persian character inside pattern attribute receive error code 404 in server side loading page while route load correctly in client side. This is my routes file:

const routes = module.exports = require('next-routes')();
routes.add({
        name: 'blog_list',
        pattern: '/بلاگ',
        page: 'blog/list'
    })

And I use express for server:

const next = require('next')
const routes = require('./routes')
const app = next({dev: process.env.NODE_ENV !== 'production'})
const handler = routes.getRequestHandler(app)
const express = require('express')
app.prepare().then(() => {
    express().use(handler).listen(4000)
})

What's the problem?

khakestani commented 6 years ago

I found that it's a problem with Express and can be solved by this solution :

const routes = module.exports = require('next-routes')()

routes.add({
        name: 'blog_list',
        pattern: `/${encodeURIComponent('بلاگ')}`,
        page: 'blog/list'
    })