2015-09-12 2 views
0

Я использую следующий код для сервера Angular app.Обслуживание угловых маршрутов go-lang

package main 

import (
    "github.com/gorilla/mux" 
    "log" 
    "net/http" 
) 

func main() { 
    r := mux.NewRouter() 
    r.PathPrefix("/portals/").Handler(http.StripPrefix("/portals/", http.FileServer(http.Dir("./portals/")))) 
    r.PathPrefix("/dependencies/").Handler(http.StripPrefix("/dependencies/", http.FileServer(http.Dir("./dependencies/")))) 
    r.HandleFunc("/registeruser", UserRegistrationHandler) 
    r.HandleFunc("/deleteuser/{username}", DeleteUserHandler) 
    http.Handle("/", r) 

    log.Println("Listening...") 
    http.ListenAndServe(":8000", r) 
} 

Если я перейти к http://localhost:8000/portals/ она способна корректно отобразить сайт со всеми dependencies.But http://localhost:8000/portals терпит неудачу с 404 не найден.

Точно так же, если я перейти к http://localhost:8000/portals/#login он работает как expected.But если перейти к http://localhost:8000/portals/login это дает 404.

Другая вещь, которую я заметил http://localhost:8000/portals/login URL работает, если перейти к ней с помощью ссылки внутри приложения (скажем, ссылку для входа в систему). Но если я набираю url в браузере и нажимаю enter, то он дает значение 404.

Что будет недостающей частью здесь? Я неправильно обрабатываю статический контент?

+0

Вы можете увидеть этот ответ: http://stackoverflow.com/a/14771362/2419919 –

+0

@ MoncefHassein-бека я уже настроен, что и до сих пор не повезло. – Anuruddha

ответ

Смежные вопросы