Как преобразовать из строки в JavaScript для эскиза, который будет использоваться в приложении C #? - PullRequest
0 голосов
/ 13 марта 2019

Приложение React отправляет запрос на получение данных при нажатии кнопки. Эта кнопка добавляет информацию к яблочному проходу, чтобы ее можно было сохранить в яблочном кошельке. Функция Wallet делает запрос в сервис.

  Wallet: function () {
  request.post('http://localhost:62666/api/pass')
    .set('Content-type', 'application/json')
    .send({ Name: this.state.results.name, 
      Status: this.state.results.status, 
      id: this.state.results.id,
      Photo: this.state.results.photo,
      Qr: this.state.results.qr
     })
    .then(function(data){
      console.log("success", data);
      console.log("text >>>", data.text);
      // store.set("text.pass", data.text);
    })
    .catch(function(err){
      console.log("error", err);
    });
},

componentDidMount: function() {
    request.action("GetINFORMATION", true).end((err, r) => {
        //console.log(r);
        ..........................
        else if (r) {
          //console.log("r.body ==", r.body);
            if (r.body.d.Photo){
              card = {
                  id: r.body.d.id,
                  name: r.body.d.Name,
                  status: r.body.d.Status,
                  advancedstatus: r.body.d.AdvancedStatus,
                  photo:  btoa(String.fromCharCode(...new Uint8Array(r.body.d.Photo))),
                  qr:  btoa(String.fromCharCode(...new Uint8Array(r.body.d.QR)))
              };
            }
             ....................

Контроллер C # - метод POST. Этот метод получает эти данные из запроса в JS. Мне нужна помощь, чтобы преобразовать строку в эскиз. Я пытался использовать растровое изображение.

      public IHttpActionResult Post([FromBody] Models.Pass input)
    {
      ........
        //request.Name = Name.NameValue;
        request.nameValue = input.Name;
        request.affiliationValue = input.Status;
        request.IdValue = input.ID;

        // pass photo and qr 
        request.photoValue = input.Photo;
        request.qrValue = input.Qr;

        id = request.IdValue;

        //Convert photo from string to bitmap
        byte[] bytes = Convert.FromBase64String(Photo);
        using (MemoryStream ms = new MemoryStream(bytes))
        {
            Bitmap thumb = new Bitmap(90, 90);
            using (Image bmp = Image.FromStream(ms))
            {
                using (Graphics g = Graphics.FromImage(thumb))
                {
                    g.InterpolationMode = InterpolationMode.HighQualityBicubic;
                    g.CompositingQuality = CompositingQuality.HighQuality;
                    g.SmoothingMode = SmoothingMode.HighQuality;
                    //g.DrawImage(bmp, 0, 0, 100, 100);
                }
            }

            ...........
        }

       .......
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...