Sıcak modül değişimi (HMR) yapan webpack-dev-middleware ve webpack-hot-middleware kullanarak bir Koa sunucum var, böylece middleware istemciye değişiklikleri itmek için bir websocket kullanıyor.Soket.io webpack-hot-middleware ile birlikte nasıl kullanılır?
Ancak, uygulama kodumun istemci ve Koa sunucusu arasında kendi web bağlantısına da ihtiyacı var. Bunu nasıl başaracağımı bilemez miyim? İkisi çatışıyor gibi görünüyor. Onları yan yana alabilir miyim?
Benim sunucu kodu bu
const compiler = webpack(webpackConfig)
const app = new Koa()
app.use(webpackDevMiddleware(compiler, {
quiet: true,
noInfo: true
stats: {
colors: true,
reasons: true
}
})))
app.use(webpackHotMiddleware(compiler))
const server = require('http').createServer(app.callback())
const io = require('socket.io')(server)
io.on('connection', function() { console.log('socket connection!!') })
Ve HMR soket düzgün çalıştığını
import Client from 'socket.io-client'
const io = Client()
io.on('connection', (socket) => {
console.log('+++ io connected! ++++')
io.on('disconnect',() => { console.log('disconnected', socket) })
})
gibi müvekkilim şey gibi görünür, ama diğeri GET /socket.io/?EIO=3&transport=polling&t=1446911862461-0
ve bu konuşmaya çalışıyor istekleri başarısız oluyor.
HMR soketiyle çakışmayan bir web parçasını nasıl oluştururum?
Bunu nasıl düzelttiniz? Express kodunun çalıştığı benzer bir sorunla karşılaşıyorum ama Koa bir her zaman bir 404 – cyberwombat