pc插件editthiscookie如何使用。格式如下:

[
{
    "domain": "www.facebook.com",
    "expirationDate": 1685149171.944668,
    "hostOnly": false,
    "httpOnly": true,
    "name": "datr",
    "path": "/",
    "sameSite": "no_restriction",
    "secure": true,
    "session": false,
    "storeId": "0",
    "value": "b-gZYEIz8RUU_eBMcwr5OjBZ",
    "isProtected": true,
    "id": 1
},
{
    "domain": "www.facebook.com",
    "hostOnly": false,
    "httpOnly": false,
    "name": "m_pixel_ratio",
    "path": "/",
    "sameSite": "unspecified",
    "secure": true,
    "session": true,
    "storeId": "0",
    "value": "3",
    "id": 2
},
{
    "domain": "www.facebook.com",
    "expirationDate": 1685149175.385561,
    "hostOnly": false,
    "httpOnly": true,
    "name": "sb",
    "path": "/",
    "sameSite": "no_restriction",
    "secure": true,
    "session": false,
    "storeId": "0",
    "value": "7e6uYIuQYi3OH0wK4_uPaP2o",
    "id": 3
},
{
    "domain": "www.facebook.com",
    "expirationDate": 1622699387,
    "hostOnly": false,
    "httpOnly": false,
    "name": "wd",
    "path": "/",
    "sameSite": "lax",
    "secure": true,
    "session": false,
    "storeId": "0",
    "value": "360x640",
    "id": 4
},
{
    "domain": "www.facebook.com",
    "hostOnly": false,
    "httpOnly": false,
    "name": "x-referer",
    "path": "/",
    "sameSite": "no_restriction",
    "secure": true,
    "session": true,
    "storeId": "0",
    "value": "eyJyIjoiL2p1c3RpbmUuamF1Z",
    "id": 5
},
{
    "domain": "www.facebook.com",
    "hostOnly": false,
    "httpOnly": false,
    "name": "c_user",
    "path": "/",
    "sameSite": "unspecified",
    "secure": true,
    "session": true,
    "storeId": "0",
    "value": "100055585550711",
    "id": 6
},
{
    "domain": "www.facebook.com",
    "hostOnly": false,
    "httpOnly": false,
    "name": "datr",
    "path": "/",
    "sameSite": "unspecified",
    "secure": true,
    "session": true,
    "storeId": "0",
    "value": "b-gZYEIz8RUU_eBMcwr5OjBZ",
    "id": 7
}
]

 是一串json文件。成功后效果图如下:

android如何使用editthiscookie_androidandroid如何使用editthiscookie_android_02

当然,我们不仅仅可以使用自己cookiel-login还可以使用别人的login。

这是pc端的登录 ,那如果我们想使用android手机也用cookie-login,该怎么处理了。答案是webview:

使用webview登录,格式与pc端使用插件有很大差别:

Set-Cookie: m_ts=1478103992; datr=uxMaWFe4eAqp6W2_dDu2MpA1; fr=OEhMpmXi6717eJE6Y; path=/; domain=.facebook.com

我们需要将json格式转换成上面那种形式,核心代码如下:

private List<FBjson> getJson(String json) {
        List<FBjson> fBjsons = new ArrayList<>();
        try {
            JSONArray jsonArray = new JSONArray(json);
            for (int i = 0; i < jsonArray.length(); i++) {
                FBjson fBbean = new FBjson();
                JSONObject jsonObject = (JSONObject) jsonArray.opt(i);
                if (jsonObject.has("name")) {
                    fBbean.setName(jsonObject.optString("name"));

                }
                if (jsonObject.has("value")) {
                    fBbean.setValue(jsonObject.optString("value"));

                }
                if (jsonObject.has("expires")) {
                    fBbean.setExpires(jsonObject.optString("expires"));

                }
                if (jsonObject.has("expires_timestamp")) {
                    fBbean.setExpires_timestamp(jsonObject.optInt("expires_timestamp"));

                }
                fBjsons.add(fBbean);


            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return fBjsons;

    }
 

然后使用webview设置cookie方法进行处理:

  private void syncCookie(String url, ArrayList<String> cookieList) {
        CookieSyncManager.createInstance(SocketActivity.this);
        CookieManager cookieManager = CookieManager.getInstance();
        cookieManager.setAcceptCookie(true);
        if (cookieList != null && cookieList.size() > 0) {
            for (String cookie : cookieList) {
                cookieManager.setCookie(url, cookie);
            }
        }
        cookieManager.setCookie(url, "Domain=" + url);
        cookieManager.setCookie(url, "Path=/");
        String cookies = cookieManager.getCookie(url);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            cookieManager.flush();
        } else {
            CookieSyncManager.getInstance().sync();
        }
    }

效果图如下:

android如何使用editthiscookie_android_03android如何使用editthiscookie_android_04

到这里,就全部讲解完成了~~~有疑问欢迎留言哦~​