• 0
Armando

Intento Con C# usar los SDK para crear ITEM

Question

Usando las SDK para crear una publicacion no he logrado entender como terminar de llenar los datos,  Creo que me falta poder cargar este parametro new {foo="bar"}

Making POST calls

var p = new HttpParams().Add("access_token", m.Credentials.AccessToken);

var r = await m.PostAsync("/items", p, new {foo="bar"});

Cabe destacar que "manualmente" usando la herramienta Advanced REST Client , puedo crear publicaciones.

Una vez que observo que puedo crear publicaciones literalmente estoy quemando el mismo codigo para hacerlo desde c#, pero lamentablemente siempre me genera error StatusCode: 400, ReasonPhrase: 'Bad Request

estuve probando enviando string, json, directamente el valor en el parametro pero no logro hacer que funcione

Asi lo veo en el programa  Advanced REST Client ,

{
  "title": "Item de test - No Ofertar AS",
  "category_id": "MCO3530",
  "price": 10,
  "currency_id": "COP",
  "available_quantity": 1,
  "buying_mode": "buy_it_now",
  "listing_type_id": "gold_special",
  "description": "Item de test - No Ofertar Armando Salinas",
  "video_id": "https://www.youtube.com/watch?v=Wqxcip73_pY",
  "attributes": [
    {
      "id": "ITEM_CONDITION",
      "value_id": "2230284"
    }
  ],
  "sale_terms": [
    {
      "id": "WARRANTY_TYPE",
      "value_id": 2230279
    },
    {
      "id": "WARRANTY_TIME",
      "value_name": "90 dias"
    }
  ],
  "pictures": [
    {
      "source": "http://mla-s2-p.mlstatic.com/968521-MLA20805195516_072016-O.jpg"
    }
  ]
}

Con la cadena anterior me funciona correctamente .

_________________________-

Pero desde mi código  C#

Lo he puesto asi:

var response = await m.PostAsync("/items",  p , new { title = "Item de test - No Ofertar AS", category_id = "MCO3530", price = 10, currency_id = "COP", available_quantity = 1, buying_mode = "buy_it_now", listing_type_id = "gold_special", description = "Item de test - No Ofertar Armando Salinas", video_id = "https://www.youtube.com/watch?v=Wqxcip73_pY", attributes = "[ { 'id' : 'ITEM_CONDITION', 'value_id': '2230284'} ]", sale_terms = "[{'id': 'WARRANTY_TYPE', 'value_id': 2230279 },{'id': 'WARRANTY_TIME', 'value_name': '90 dias'}]", pictures = "[{'source':'http://mla-s2-p.mlstatic.com/968521-MLA20805195516_072016-O.jpg'}]" });
__________________

También  así. 

string data = @"{ 'title':'Item de test - No Ofertar AS','category_id':'MCO3530','price':10,'currency_id':'COP','available_quantity':1,'buying_mode':'buy_it_now','listing_type_id':'gold_special','description': 'Item de test - No Ofertar Armando Salinas','video_id': 'https://www.youtube.com/watch?v=Wqxcip73_pY','attributes': [{ 'id' : 'ITEM_CONDITION', 'value_id': '2230284'} ],'sale_terms':[{'id': 'WARRANTY_TYPE', 'value_id': 2230279 },{'id': 'WARRANTY_TIME', 'value_name': '90 dias'}],'pictures':[{'source':'http://mla-s2-p.mlstatic.com/968521-MLA20805195516_072016-O.jpg'}] }";

var r = await m.PostAsync("/items", p, new {data});

he colocado estas variantes en el codigo

var r = await m.PostAsync("/items", p, data);

Pero En todos los casos me generar el mismo error 400. 

 

Agradezco la colaboración 
           

Edited by Armando

Share this post


Link to post
Share on other sites

1 answer to this question

Recommended Posts

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now