Почему не работает подключение к серверу с модернизацией? - PullRequest
0 голосов
/ 23 марта 2020

Я попробовал все, что нашел на inte rnet, но все еще не могу подключиться к серверу. Вот файл network_security_config:

    <domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">127.0.0.1</domain>
        <domain includeSubdomains="true">localhost</domain>
        <domain includeSubdomains="true">http://127.0.0.1:8000/laravel/allamvizsga_backend/public/api/</domain>
    </domain-config>
</network-security-config>

У меня это также включено в файл манифеста. Ошибка до этого была «передача в незашифрованном виде, запрещенная политикой безопасности сети», а после изменения «Не удается подключиться к серверу /127.0.0.1». В чем может быть проблема?

Мой интерфейс клиента API:

private static final String BASE_URL = "http://127.0.0.1:8000/laravel/allamvizsga_backend/public/api/";
 public static Retrofit getRetrofitInstance(){
     if (retrofit == null) {
         retrofit = new retrofit2.Retrofit.Builder()
                 .baseUrl(BASE_URL)
                 .addConverterFactory(GsonConverterFactory.create())
                 .build();
     }
     return retrofit;
 }

И путь:

@FormUrlEncoded
    @POST("login")
    Call<Result> loginUser(
            @Field("email") String email,
            @Field("password") String password);

1 Ответ

2 голосов
/ 23 марта 2020

127.0.0.1 относится к интерфейсу обратной связи на устройстве, на котором выполняется код. Я сомневаюсь, что там работает какой-либо сервер.

Предполагая, что ваш сервер установлен на том же компьютере, на котором запущен эмулятор, используйте вместо него 10.0.2.2.

Для получения дополнительной информации: https://developer.android.com/studio/run/emulator-networking

...