android中的woocommerce

android中的woocommerce

本文介绍了android中的woocommerce rest api OAuth身份验证的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Android中OAuth 1.0a(单腿)身份验证的示例代码是什么?有图书馆吗?.我用eclipse,我是android的新手.谁能为我澄清道路?

what is the sample code for OAuth 1.0a(one leg) authentication in android?is there a library for it? .I use eclipse and i'm new in android. can anyone clarify the path for me?

推荐答案

回答我自己的问题:

  1. 下载Scrib.jar库并将其添加到您的lib文件夹(您可以从(此处)
  2. 创建一个名称为"OneLeggedApi10"的类,并在其中复制以下代码:

  1. download Scrib.jar library and add it to your lib folder(you can download it from (here)
  2. create a class with name "OneLeggedApi10" and copy below code in it:

import org.scribe.builder.api.DefaultApi10a;
import org.scribe.model.Verb;
import org.scribe.model.Token;
public class OneLeggedApi10 extends DefaultApi10a  {
@Override
public String getAccessTokenEndpoint() {
    return null;
}

@Override
public String getRequestTokenEndpoint() {
    return null;
}

@Override
public String getAuthorizationUrl(Token requestToken) {
    return null;
}

@Override
public Verb getAccessTokenVerb() {
    return Verb.GET;
}

@Override
public Verb getRequestTokenVerb() {
    return Verb.GET;
}
}


现在您可以进行OAuth身份验证:

now you can do OAuth authentication:

String RESOURCE_URL = "http://yourDomain.com/wc-api/v3/orders";
String SCOPE = "*"; //all permissions
Response response;
OAuthRequest request;
String responsebody = "";
OAuthService service = new ServiceBuilder().provider(OneLeggedApi10.class)
                .apiKey("your_key")
                .apiSecret("your_apiSecret")
                .signatureType(SignatureType.QueryString)
                .debug()
                /*.scope(SCOPE).*/
                .build();

            request = new OAuthRequest(Verb.GET, RESOURCE_URL);
            service.signRequest(new Token("", ""), request);

            // Now let's go and ask for a protected resource!
            Log.d("scribe","Now we're going to access a protected resource...");
            try{
                response = request.send();
                if (response.isSuccessful()) {
                    responsebody  = response.getBody();
                }

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

  • 请注意,如果您不在AsyncTask中使用上述代码,则将request.send()部分放在线程中(实际上是整个try_catch部分),以避免在主线程异常中运行

  • note that if you are not using above code in an AsyncTask,then put the request.send() part in a thread (actually whole try_catch section) for avoiding run in main thread exception

    最后,如果要发送数据,例如在要更新订单的情况下,请替换

    finally if you want to send data,for example in a case that you want to update an order,replace

     request = new OAuthRequest(Verb.GET, RESOURCE_URL);
    

    包含以下几行:

    String payload = yourJsonOBJ.toString();
    request = new OAuthRequest(Verb.PUT, RESOURCE_URL);
    request.addHeader("Content-Type", "application/json");
    request.addPayload(payload);
    

  • WooCommerce文档站点
    中的更多信息希望对您有所帮助;)
    祝你好运.

    more information in WooCommerce Documentation site
    Hope it help ;)
    good luck..

    这篇关于android中的woocommerce rest api OAuth身份验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

    08-01 19:06