android–Retrofit 404找不到web api

android–Retrofit 404找不到web api,第1张

概述我有一个webapi和一个应用程序.所以我想要一个注册应用程序,但我有一个问题.我用天蓝色的.有我的registerapi(界面)@FormUrlEncoded@POST("/application/json")publicvoidinsertUser(@Field("Username")StringUsername,@Field("Password")StringPass

我有一个web API和一个应用程序.所以我想要一个注册应用程序,但我有一个问题.我用天蓝色的.
有我的registerapi(界面)

@FormUrlEncoded@POST("/application/Json")public voID insertUser(        @FIEld("Username") String Username,        @FIEld("Password") String Password,        @FIEld("Email") String Email,        Callback<Response> callback);

和我的mainactivty.java页面

public class MainActivity extends AppCompatActivity {private EditText editTextUsername;private EditText editTextPassword;private EditText editTextEmail;private button buttonRegister;final public static String ROOT_URL = "http://bsapmusic.azurewebsites.net/API/music/register";@OverrIDeprotected voID onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentVIEw(R.layout.activity_main);    editTextUsername = (EditText) findVIEwByID(R.ID.etusername);    editTextPassword = (EditText) findVIEwByID(R.ID.etpassword);    editTextEmail = (EditText) findVIEwByID(R.ID.etmail);    buttonRegister = (button) findVIEwByID(R.ID.btnkayit);    buttonRegister.setonClickListener(new VIEw.OnClickListener() {        @OverrIDe        public voID onClick(VIEw vIEw) {            insertUser();        }    });}private voID insertUser(){    RestAdapter adapter =new RestAdapter.Builder().setEndpoint(ROOT_URL).build();    RegisteraPI API = adapter.create(RegisteraPI.class);    API.insertUser(            editTextUsername.getText().toString(),            editTextPassword.getText().toString(),            editTextEmail.getText().toString(),            new Callback<Response>() {                @OverrIDe                public voID success(Response result, Response response) {                    BufferedReader reader = null;                    String output = "";                    try{                        reader=new BufferedReader(new inputStreamReader(result.getbody().in()));                        output=reader.readline();                    }                    catch (IOException e){                        e.printstacktrace();                    }                    Toast.makeText(MainActivity.this,output,Toast.LENGTH_LONG).show();                }                @OverrIDe                public voID failure(RetrofitError error) {                    Toast.makeText(MainActivity.this, error.toString(),Toast.LENGTH_LONG).show();                }            });};

而我发现改造404没找到.

解决方法:

假设http://bsapmusic.azurewebsites.net/API/music/register是API中注册方法的URL:

404表示此网址没有API.
你的baseurl是http://bsapmusic.azurewebsites.net/API/music/register
在此baseurl之后,附加@post内的路径.这将导致网址:http://bsapmusic.azurewebsites.net/API/music/register/application/Json.
您的注册方法的网址可能是第一个网址.
baseurl应该是你的API的根URL url,在你的情况下这可能是:http://bsapmusic.azurewebsites.net/API/.在@GET,@ POST,@ PUT中,您可以设置特定API方法的路径.在你的情况下将是@POST(“音乐/注册”).您没有在此处设置发送到API的数据类型.

总结

以上是内存溢出为你收集整理的android – Retrofit 404找不到web api全部内容,希望文章能够帮你解决android – Retrofit 404找不到web api所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1108385.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存