Я использую это tutorial, чтобы сделать веб-приложение с GoLang, Angular2 и Dart, но когда я запустил бэкэнд с помощью командной консоли «backend» и маршрут в браузере «localhost: 8080/«он должен вызывать метод из класса Дарта« Привет », но он не вызывает, и я получаю ошибку 404. Весь код, который я получил от учебника, ничего не изменил. И я не могу найти никаких других учебников. Можете ли вы объяснить мне, что я делаю неправильно?Не удается запустить бэкэнд GolLang с дроком и угловым клиентом
код GoLang:
func main() {
http.Handle("/", http.FileServer(http.Dir("./app/web/")))
fmt.Println("Text")
http.HandleFunc("/api/hello", helloWorld)
http.ListenAndServe(":8080", nil)
}
func helloWorld(w http.ResponseWriter, r *http.Request) {
data := struct {
Message string
}{
"Hello, World",
}
if err := json.NewEncoder(w).Encode(data); err != nil {
log.Println(err)
}
}
и угловой код дротик: структура
class AppComponent {
Hello hello = new Hello();
}
class Hello{
String message;
Hello(){
HttpRequest.getString('/api/hello')
.then((String content) {
Map parsedMap = JSON.decode(content);
message = parsedMap["Message"];
})
.catchError((Error error) {
print(error.toString());
});
}
}
Что такое "приложение" в «приложение Безразлично» t conn ect to Dart side "? Почему «приложение» подключается к «стороне Дарта» ?. Если Dart используется на клиенте (с угловым), клиент должен подключиться к серверу, а не наоборот. –
@ GünterZöchbauer, когда я иду в браузере на localhost: 8080/он должен вызывать обработчик «Hello», который описывает в web/main.dart, но он этого не делает, и просто перенаправляет на 404 – EgorkZe
@ GünterZöchbauer прав. Попробуйте локализовать проблему. Первая проверка - серверная сторона работает и отвечает на HTTP-запросы (от пользователя-посредника, введя URL-адрес в адресную строку, а не из Dart). Если это работает, вам необходимо предоставить некоторую информацию о том, как вы вызываете сервер, и каковы журналы ошибок. Работает ли http: // localhost: 8080/api/hello? –