2

出于某种原因,我无法将数据推送到我的 firebase 数据库。我正在尝试使用 Volley 对我的数据库进行 RESTful 调用。你认为我做错了什么?

我收到的问题:

12-23 19:16:43.026  15428-16461/me.anuraag.barter E/Volley﹕ [7289] BasicNetwork.performRequest: Unexpected response code 400 for https://barter.firebaseio.com/.json
12-23 19:16:43.028  15428-15428/me.anuraag.barter I/Error.Response﹕ com.android.volley.ServerError

代码:

public void firebaseSignUp(String emails){
    final String emailed = emails;
    RequestQueue queue = Volley.newRequestQueue(getActivity());
    String url ="https://barter.firebaseio.com/.json";

    StringRequest postRequest = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
        @Override
        public void onResponse(String response) {
            Log.i("Repsponse",response);
        }
    },new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
           Log.i("Error.Response", error.toString());

        }
    }
    ) {
        protected Map<String, String> getParams() {
            Map<String, String> params = new HashMap<String, String>();
            params.put("email", emailed);
            return params;
        }
    };
    queue.add(postRequest);
}
4

1 回答 1

4

不要POST自己做。根据他们的示例,使用Firebase API为您处理所有这些。

确保您首先注册了 Firebase。然后将此添加到您的依赖项中build.gradle

编译'com.firebase:firebase-client-android:2.0.3+'

然后为了保存,您可以执行以下操作:

Firebase usersRef = new Firebase("firebase.url.your/personal/dir").child("someChild");

Map<String, Object> users = new HashMap<String, Object>();
users.put("Dogs rule", someObjectWithAccessors);
users.put("Cats drewl", someOtherObjectWithAccessors);

usersRef.setValue(users);

然后要检索,您可以执行以下操作:

// Attach an listener to read the data at our posts 
usersRef.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot snapshot) {
        Log.d(TAG, snapshot.getKey() + " received from firebase");
    }

    @Override
    public void onCancelled(FirebaseError firebaseError) {
        Log.w(TAG, "The read failed: " + firebaseError.getMessage());
    }
 });
于 2014-12-24T00:37:18.507 回答