java - 本地C# API、android Studio程序

标签 java c# android asp.net-web-api retrofit

我有一个在 VS17 中运行的 C# 本地 WEB API,它使用基本的 HTTP 方法运行和访问 SQL Express 中的数据库。

另一方面,我想要一个 Android 应用程序(具备基础知识),该应用程序应该访问 API 并只生成一个简单的 GET 请求(当前使用 Retrofit),然后显示检索到的数据。后端一切正常(用 postman 测试)。

但我在通过应用程序访问我的 API 方面还没有取得任何成功。任何有关我需要关注或如何开始的指导都会很棒!

Notes: API is locally hosted SQLEXpress DB is local Android Device is an emulator I need to use SQLExpress as to SQlite private final String BASE_URL = "http://10.0.2.2:60060";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    listView = (ListView)findViewById(R.id.pagination_list);

    Retrofit.Builder builder = new Retrofit.Builder()
            .baseUrl(BASE_URL)
            .addConverterFactory(GsonConverterFactory.create());

    Retrofit retrofit = builder.build();

    EmployeeAPIClient client = retrofit.create(EmployeeAPIClient.class);

    Call<List<Employee>> call = client.allEmployees();

    call.enqueue(new Callback<List<Employee>>() {
        @Override
        public void onResponse(Call<List<Employee>> call, Response<List<Employee>> response) {
            List<Employee> employees = response.body();

            Log.w("MainAct onResponse():", " response method called.");
            if(employees.size() <= 0){
                Log.w("EMPTY", " List is empty..");
            }else {
                for(Employee emp: employees){
                    Log.d("FirstName: " , emp.getFirstName());
                    Log.d("LastName: " , emp.getLastName());
                    Log.d("Gender: " , emp.getGender());
                    Log.d("Salary: " , emp.getSalary());
                }
                //listView.setAdapter(new EmployeeAdapter(MainActivity.this, employees));
            }

最佳答案

IISExpress 本身不支持远程请求。您必须进行一些调整才能使其正常工作:

这里对如何操作有很好的解释:https://stackoverflow.com/a/3364468/637840

关于java - 本地C# API、android Studio程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51029728/

相关文章:

java - Jersey 和 spring 集成 - bean 注入(inject)在运行时为空

c# - 如何计算在文本框中输入的字符数?

java - Android Studio 找不到资源

android - 位图图像未显示在 imageview 中

android - 调用默认相机并将图片保存在不属于图库的用户定义位置

java - 套接字服务器和套接字客户端java - 从位于不同计算机上的客户端检测服务器

java - GlassFish 上的 ical4j 订阅服务

java - 无法创建枚举

c# - HTML.ActionLink 方法

c# - 使用 MVVM 时如何使 TextBox 成为 "password box"并显示星星?