I've developed an app that contains an inbox that displays message from a CloudKit container. Works perfectly on simulator. Once I tried to run it on a phone..in Xcode debug environment and TestFlight it is unable to complete any transactions with production database. I'm running out of ideas. So far I have tried:
Verify settings between debug and release in Signing & Capabilities
Add CloudKit.framework to Framework, Libraries, and Embedded Content
Verify record and key names
verify .entitlements files
Please help!
CloudKit JS
RSS for tagCloudKit JS provides access from your web app to your CloudKit app’s containers and databases.
Posts under CloudKit JS tag
5 Posts
Sort by:
Post
Replies
Boosts
Views
Activity
Hello, everyone!
I'm using CloudKit JS with a React SPA to allow users from a mobile app to access their data in a web browser. Currently, the project is still under development so there are no public users beside my team.
The way I've integrated CK JS in my app is via their CDN, importing the required url in my index.html file.
However, I'm having issues with the Authentication using Apple Sign In. While the Sign In and Sign Out buttons work correctly for me and my teammates, the session is not persisted for everyone. Actually, I'm the only one from me team that does not have to log in every day.
I have the following configuration function:
export const configureCloudKit = () => {
window.CloudKit.configure({
locale: 'en-us',
containers: [
{
containerIdentifier: CONTAINER_ID,
apiTokenAuth: {
apiToken: API_TOKEN,
persist: true,
signInButton: {
id: 'apple-sign-in-button',
theme: 'black',
},
signOutButton: {
id: 'apple-sign-out-button',
theme: 'black',
},
},
environment: 'development',
},
],
});
};
As you can see, I'm using the persist:true option so there shouldn't be any issues with having a persistent session.
From my research, I found that CloudKit JS sets a cookie called iCloud.com.myContainerName and if I delete that cookie, when I reload the browser, the session is indeed lost. This happens for all my teammates, same cookie and same behavior.
Nevertheless, I also found three cookies that are not present for any of my teammates but me (using Google Chrome). Those are called:
X-APPLE-WEBAUTH-AC-PARTITION
X-APPLE-WEBAUTH-AC-SERVERINFO
X-APPLE-WEBAUTH-AC-TOKEN
But even if I delete those cookies, the session is not lost for me.
Does anyone know whether I'm doing something wrong with the configuration?
Or if there are something I'm not taking into account regarding the cookies handling in my project?
Hi,
it is possible to accept an invitation to a zone in a shared db using cloudkit js, but can you subscribe to receive change notifications?
It doesn't look like you can create a database subscription (and zone or query types don't seem appropriate for shared databases).
Does that mean you can't get notified and you have to keep polling the cloudkit container for changes? If so, why such a limitation?
Thanks
Cloudkit.js user authentication cannot work any more.
This causes one of my web apps which has been working for quite a few years stop to work. Can someone fix it?
You can reproduce the error with the official CloudKitJS catalog: https://cdn.apple-cloudkit.com/cloudkit-catalog/#authentication
Hello, everyone!
I'm currently working in creating a new web app that will replicate the functionalities of an existing iOS and Mac app.
However, since those apps rely on CloudKit to manage all user information, we decided on using CloudKit JS as our backend for our web app. The framework we chose for developing our frontend is React.
The question is, since this documentation only mentions the CloudKit JS usage through a CDN (embedded directly in the HTML file) I wanted to ask:
is there a "suggested" method for using CloudKit JS in a React project other than importing the CDN in the main html file?
in case not, should we use a "traditional" server to access data like they suggest in this thread?
All your help will be very much appreciated.
Best regards, Eduardo