Javascript 将ArrayBuffer作为JSON发送到PHP服务器

Javascript 将ArrayBuffer作为JSON发送到PHP服务器,javascript,push-notification,service-worker,Javascript,Push Notification,Service Worker,我试图向PHP发送一个POST请求,该请求将包含一个包含ArrayBuffer元素的对象。当我对元素进行JSON解码时,两个ArrayBuffers对象都为null/空 “key”对象包含两个ArrayBuffer元素“p256dh”和“auth” 该对象由注册服务工作者时创建的pushSubscription对象生成 订阅变量: {"endpoint":"https://fcm.googleapis.com/fcm/send/dgoXscLGNKM:APA91bFcHhA2pGiatLbrhF

我试图向PHP发送一个POST请求,该请求将包含一个包含ArrayBuffer元素的对象。当我对元素进行JSON解码时,两个ArrayBuffers对象都为null/空

“key”对象包含两个ArrayBuffer元素“p256dh”和“auth”

该对象由注册服务工作者时创建的pushSubscription对象生成

订阅变量:

{"endpoint":"https://fcm.googleapis.com/fcm/send/dgoXscLGNKM:APA91bFcHhA2pGiatLbrhFW08oevNS81LX7C0a0zW3RP7BaJgBhij2apFxtfo8kX_kt5QE6bu5-zoYkpw50GYqOnalpFHYfpECgmIMgpVWcKGRsvUkgzM0aK_9X9HHmPIw7nqDoGK6FQ","expirationTime":null,"keys":{"p256dh":"BDQLzb281Nlw-wQzqYELodphecu7jiZD1sRd_iOCMLvK1u20Bl2-hx5EeyzEpJ0WqYvmRXnddwQHSpfC8PjEghQ","auth":"K3DI2PLDfJSAJC2DMKSqzw"}}
代码:

好的,我找到了解决办法 在将pushSubscription对象传递给fetch之前创建它时,我需要将其转换为JSON。它创建了一个我需要传递回后端服务器的正确字符串

 function sendSubscriptionToBackEnd(subscription, end_point)
      {
          return fetch (end_point, { method: 'POST', headers: {'Content-Type': 'application/json'}, body: JSON.stringify(subscription)})                                                                                                       
              .then((res) => {
                  return res.json();
              })
              .then((resJSON) =>{
                  return resJSON;
              })
              .catch((err) => {
                  console.log('Fetch Error : ', err);
              });
      }