pdd.ddk.goods.search.go 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. package pdd
  2. import (
  3. "duoduo/conf"
  4. "duoduo/models/pdd"
  5. "duoduo/tools"
  6. "duoduo/tools/app"
  7. "fmt"
  8. "github.com/gin-gonic/gin"
  9. "time"
  10. )
  11. //商品列表
  12. func PddDdkGoodsSearch(c *gin.Context) {
  13. var inData pdd.PddDdkGoodsSearchRequest
  14. var outData pdd.PddDdkGoodsSearchResponse
  15. var pddErr pdd.ErrorPddResponse
  16. //var p []byte
  17. confIni, err := conf.ConnIni()
  18. if err != nil {
  19. app.Error(c, 400, err, err.Error())
  20. return
  21. }
  22. //
  23. //body, _ := ioutil.ReadAll(c.Request.Body)
  24. //if body != nil {
  25. // fmt.Print("请求body内容为:%s", string(body))
  26. //}
  27. //fmt.Print(string(c.Request.Body))
  28. //c.Request.Body.Read(p)
  29. //fmt.Print("p= ", string(p))
  30. err = c.ShouldBindJSON(&inData)
  31. if err != nil {
  32. app.Error(c, 400, err, err.Error())
  33. return
  34. }
  35. fmt.Print(inData.Page)
  36. fmt.Print(inData.PageSize)
  37. inData.ClientId = confIni.MustValue("pdd", "client_id")
  38. inData.Type = "pdd.ddk.goods.search"
  39. inData.Timestamp = fmt.Sprintf("%d", time.Now().Unix())
  40. inData.DataType = "JSON"
  41. inData.Sign = "sign"
  42. sign, err := DDKSign(inData)
  43. if err != nil {
  44. app.Error(c, 400, err, err.Error())
  45. return
  46. }
  47. inData.Sign = sign
  48. val, err := PostDDk(inData, nil)
  49. if err != nil {
  50. app.Error(c, 400, err, err.Error())
  51. return
  52. }
  53. err = tools.JsonUnmarshal(val, &outData)
  54. if err != nil {
  55. err = tools.JsonUnmarshal(val, &pddErr)
  56. if err != nil {
  57. app.Error(c, 500, err, err.Error())
  58. return
  59. }
  60. app.Error(c, 500, nil, pddErr.ErrorResponse.ErrorMsg)
  61. return
  62. }
  63. app.OK(c, outData, app.Success)
  64. }